poj 3664

http://poj.org/problem?id=3664

进行两轮选举,第一轮选前n进入第二轮,第二轮选最高

#include<algorithm>
#include<cstdio>
using namespace std;
struct vote
{
    int a,b;
    int c;
};
bool cmp1(const vote  & a ,const vote & b)
{
    return a.a>b.a;
}

bool cmp( const vote& a ,const vote& b)
{
    return a.b>b.b;
}
int main()
{
    int n,k;
    scanf("%d%d",&n,&k);
    vote aa[50010];
        for(int i=0;i<n;i++)
        {
            aa[i].c=0;
            scanf("%d%d",&aa[i].a,&aa[i].b);
            aa[i].c=i+1;
        }
        sort(aa,aa+n,cmp1);
        sort(aa,aa+k,cmp);


   printf("%d
",aa[0].c);
    return 0;
}
原文地址:https://www.cnblogs.com/jin-nuo/p/5511408.html