记录编号 |
41996 |
评测结果 |
AAAAAAAAAA |
题目名称 |
谁是卧底 |
最终得分 |
100 |
用户昵称 |
Cloud |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.034 s |
提交时间 |
2012-09-10 09:46:10 |
内存使用 |
0.31 MiB |
显示代码纯文本
#include<fstream>
#include<set>
using namespace std;
struct yu
{
int a,b;
};
struct cmp
{
int operator()(const yu & e1 ,const yu & e2)
{
if(e1.a<e2.a)
return 1;
else
return 0;
}
};
set<yu,cmp> s;
set<yu,cmp>::iterator p;
yu tmp;
int main(void)
{
ifstream fin("leader.in");
ofstream fout("leader.out");
int n,m;
fin>>n>>m;
int i,x;
for(i=0;i<m;i++)
{
fin>>x;
tmp.a=x;
p=s.find(tmp);
if(p==s.end())
{
tmp.b=1;
s.insert(tmp);
}
else
{
tmp.b=p->b+1;
s.erase(p);
s.insert(tmp);
}
}
bool f=1;
for(p=s.begin();p!=s.end();p++)
if(p->b>m/2)
{
fout<<p->a;
f=0;
break;
}
if(f)
fout<<"-1";
fin.close();
fout.close();
return 0;
}