Cod sursa(job #842261)
Utilizator | Alex Cociorva Al3ks1002 | Data | 26 decembrie 2012 15:51:55 |
---|---|---|---|
Problema | Elementul majoritar | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#include<cstdio>
using namespace std;
const int NMAX = 1000005;
int n,i,k,cand,cnt,a[NMAX];
int main()
{
freopen("elmaj.in","r",stdin);
freopen("elmaj.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&a[i]);
if(!k) {cand=a[i];k++;}
else if(a[i]==cand) k++;
else k--;
}
for(i=1;i<=n;i++)
if(a[i]==cand) cnt++;
if(cnt>(n/2)) printf("%d %d\n",cand,cnt);
else printf("-1\n");
return 0;
}