Nu aveti permisiuni pentru a descarca fisierul grader_eval6.in
Cod sursa(job #1188118)
| Utilizator | Data | 18 mai 2014 22:39:30 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.66 kb |
#include <cstdio>
using namespace std;
int v[1000010];
int main()
{
freopen("elmaj.in","r",stdin);
freopen("elmaj.out","w",stdout);
int n,i,elem,nr;
scanf("%d",&n);
for(i=1;i<=n;++i)
scanf("%d",v+i);
elem=v[1];
nr=1;
for(i=2;i<=n;++i)
if(v[i]==elem)
nr++;
else
{
nr--;
if(nr==0)
{
elem=v[i];
nr=1;
}
}
nr=0;
for(i=1;i<=n;++i)
if(v[i]==elem)
nr++;
if(nr>n/2)
printf("%d %d",elem,nr);
else
printf("-1");
return 0;
}
