Cod sursa(job #660709)
Utilizator | Data | 13 ianuarie 2012 12:30:08 | |
---|---|---|---|
Problema | Elementul majoritar | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.4 kb |
#include <cstdio>
#include <algorithm>
using namespace std;
int v[3000005];
int main(){
freopen("elmaj.in","r",stdin);
freopen("elmaj.out","w",stdout);
int n,i,cont=0;
scanf("%d",&n);
for(i=1;i<=n;++i)
scanf("%d",&v[i]);
nth_element(v+1,v+n/2+1,v+n+1);
for(i=1;i<=n;++i)
if(v[i]==v[n/2+1])
++cont;
if(cont>n/2){
printf("%d",v[n/2+1]);
return 0;
}
printf("-1");
}