Cod sursa(job #645574)
| Utilizator | Data | 9 decembrie 2011 22:23:17 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.46 kb |
#include<cstdio>
using namespace std;
int a[1000005];
int main ()
{
int n,i,k=0,el,cont;
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==0)
{
el=a[i];
k=1;
}
else if (a[i]==el)
k++;
else k--;
}
cont=0;
for (i=1; i<=n; i++)
if (a[i]==el)
cont++;
if (cont>n/2)
printf("%d %d\n",el,cont);
else printf("-1\n");
return 0;
}
