Cod sursa(job #2301394)

Utilizator danielsociuSociu Daniel danielsociu Data 12 decembrie 2018 21:46:08
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.39 kb
#include <fstream>
std::ifstream cin("elmaj.in");
std::ofstream cout("elmaj.out");
#define maxn 1000001

int a[maxn],n;

int main()
{
	int k=0,cand,nr=0;
	cin>>n;
	for(int i=1;i<=n;++i){
		cin>>a[i];
		if(k==0){
			cand=a[i];
			k=1;
		}else
			if(cand==a[i])
				++k;
			else
				--k;
	}
	for(int i=1;i<=n;i++)
		if(a[i]==cand)
			++nr;
	if(nr>n/2)
		cout<<cand<<' '<<nr;
	else
		cout<<"-1";
}