Cod sursa(job #1126574)

Utilizator Al3ks1002Alex Cociorva Al3ks1002 Data 27 februarie 2014 02:59:34
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include<cstdio>
using namespace std;
int n,i,a[1000005],cnt,cand;
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(cnt)
	    {
	        if(cand==a[i]) cnt++;
	        else cnt--;
	    }
	    else
	    {
	        cand=a[i];
	        cnt++;
	    }
	}
	for(cnt=0,i=1;i<=n;i++) if(cand==a[i]) cnt++;
	if(cnt>=(n/2+1)) printf("%d %d\n",cand,cnt); else printf("-1\n");
	return 0;
}