Cod sursa(job #1013663)

Utilizator vladrochianVlad Rochian vladrochian Data 21 octombrie 2013 15:29:45
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <fstream>
using namespace std;
int n,i,v[1000000],cand,ap;
int main()
{
	ifstream fin("elmaj.in");
	ofstream fout("elmaj.out");
	fin>>n;
	for (i=0;i<n;i++)
	{
		fin>>v[i];
		if (!ap)
		{
			cand=v[i];
			ap=1;
		}
		else
		{
			if (v[i]==cand)
				ap++;
			else
				ap--;
		}
	}
	ap=0;
	for (i=0;i<n;i++)
		if (v[i]==cand)
			ap++;
	if (ap>n/2)
		fout<<cand<<" "<<ap<<"\n";
	else
		fout<<"-1\n";
	return 0;
}