Cod sursa(job #648979)
| Utilizator | Data | 14 decembrie 2011 21:42:42 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.5 kb |
#include <cstdio>
#include <iostream>
#include <vector>
using namespace std;
unsigned int v[1000005];
pair <unsigned int,unsigned int> maxim;
int main()
{
int n,nr;
freopen("elmaj.in","r", stdin);
freopen("elmaj.out","w", stdout);
scanf("%d ",&n);
for(int i=1;i<=n;i++)
{
scanf("%d ",&nr);
v[nr]++;
if(v[nr]>maxim.first)
{
maxim.first=v[nr];
maxim.second=nr;
}
}
if(maxim.first>=(n/2+1))
cout<<maxim.second<<" "<<maxim.first;
else cout<<-1;
return 0;
}
