Cod sursa(job #650760)

Utilizator DaicuDaicu Alexandru Daicu Data 18 decembrie 2011 21:50:14
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include<fstream>
using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int n,a[1000001];
void citire(){
	f>>n;
	for(int i=1;i<=n;i++)
		f>>a[i];
}
void el_maj(){
	int elmaj,count=0;
	for(int i=1;i<=n;i++){
		if(!count)
			elmaj=a[i],count=1;
		else
			count+=(a[i]==elmaj)?1:-1;
	}
	count=0;
	for(int i=1;i<=n;i++)
		if(a[i]==elmaj)
			++count;
	(count>=(n/2+1))? g<<elmaj<<" "<<count : g<<"-1";
}
int main(){
	citire();
	el_maj();
	return 0;
}