Cod sursa(job #921742)

Utilizator Kira96Denis Mita Kira96 Data 21 martie 2013 12:23:09
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include<fstream>
#define NM 1000002
using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int n,i,v[NM],k,cand,nr;
int main ()
{
	f>>n;
	for(i=1;i<=n;++i)
	{
		f>>v[i];
		if(k==0)
		{
			k++;
			cand=v[i];
		}
		else
		if(cand==v[i])
		k++;
		else
		k--;
	}
	if(cand<0)
	{
		g<<"-1";
		return 0;
	}
	for(i=1;i<=n;++i)
	if(cand==v[i])
	nr++;
	if(nr>n/2)
	g<<cand<<" "<<nr;
	else
	g<<"-1";
	return 0;
}