Cod sursa(job #640007)

Utilizator alexalbu95Albu Alexandru alexalbu95 Data 24 noiembrie 2011 15:53:32
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include<fstream>
using namespace std;
const int NMAX=1000009;
ifstream f("elmaj.in");
ofstream g("elmaj.out");

long n, a[NMAX], i, x, k, nr;

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