期末预测之最佳阈值 CSP-CCF

期末预测之最佳阈值
期末预测之最佳阈值 CSP-CCF_第1张图片

#include 

using namespace std;
const int N=100005;
struct node
{
     
    int x,y,z;
}a[N];
int n,sum,ans;
bool cmp(node &a,node &b)
{
     
    if(a.x!=b.x)
   return a.x<b.x;
   return a.y>b.y;
}
int main()
{
     
  scanf("%d",&n);
  for(int i=0;i<n;i++)
  {
     
      scanf("%d %d",&a[i].x,&a[i].y);
  }
  sort(a,a+n,cmp);
  for(int i=0;i<n;i++)
  {
     
      a[i].z=sum;
      if(a[i].y==0)sum++;
  }
  sum=0;
  for(int i=n-1;i>=0;i--)
  {
     
      if(a[i].y==1)sum++;
      a[i].z+=sum;
  }
    int k;
    ans=a[0].z;
    for(int i=0;i<n;i++)
    {
     
        if(ans<=a[i].z){
     
            ans=a[i].z;
            k=a[i].x;}
    }
   printf("%d\n",k);
    return 0;
}

你可能感兴趣的:(csp,算法,排序,c++)