Cod sursa(job #990535)

Utilizator chiriacandrei25Chiriac Andrei chiriacandrei25 Data 28 august 2013 16:18:35
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include <cstdio>

using namespace std;

int v[1000005];

int main()
{
	int x,nr,i,n;
	freopen ("elmaj.in","r",stdin);
	freopen ("elmaj.out","w",stdout);
	scanf("%d", &n);
	for(i=1;i<=n;i++)
		scanf("%d", &v[i]);
	x=v[1];nr=1;
	for(i=2;i<=n;i++)
		if(v[i]==x)
			nr++;
		else
		{
			nr--;
			if(nr<0)
			{
				x=v[i];
				nr=1;
			}
		}
	nr=0;
	for(i=1;i<=n;i++)
		if(v[i]==x)
			nr++;
	if(nr>n/2)
		printf("%d %d\n", x,nr);
	else
		printf("-1\n");
	return 0;
}