Cod sursa(job #1588688)

Utilizator Vasile_RotaruVasea Rotaru Vasile_Rotaru Data 3 februarie 2016 14:54:38
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include<fstream>
#include<cmath>

using namespace std;

ifstream fin("elmaj.in");
ofstream fout("elmaj.out");

int n,a[1000001],i,x,nr(1);

int main()
{
	fin>>n;
	for(i=1;i<=n;++i)fin>>a[i];
	x=a[1];
	for(i=1;i<=n;++i)
	{
		if(x==a[i])++nr;
		else --nr;
		if(nr<0)
		{
			x=a[i];
			nr=1;
		}		
	}
	nr=0;
	for(i=1;i<=n;++i)if(x==a[i])++nr;
	if(nr>n/2)fout<<x<<" "<<nr<<"\n";
		else fout<<"-1\n";
	return 0;
}