Cod sursa(job #664737)

Utilizator tomaAndrei Toma toma Data 20 ianuarie 2012 18:41:30
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.38 kb
#include<stdio.h>
int N,i,a[1000002],x,nr;
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]);
	x=a[1],nr=1;
	for (i=2;i<=N;i++) if (a[i]==x) nr++;
		else if (nr>1) nr--;
			else x=a[i];
	for (i=1,nr=0;i<=N;i++) if (a[i]==x) nr++;
	if (nr>N/2) printf("%d %d\n",x,nr);
	else printf("-1\n");
}