Cod sursa(job #881603)

Utilizator howsiweiHow Si Wei howsiwei Data 18 februarie 2013 12:22:55
Problema Elementul majoritar Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include <fstream>
using namespace std;

int main() {
	ifstream fin("elmaj.in");
	ofstream fout("elmaj.out");
	int n; fin >> n;
	int a, nsurv=0, surv=-1;
	for (int i=0; i<n; ++i) {
		fin >> a;
		if (nsurv==0) {
			nsurv=1;
			surv=a;
		}
		else if (a==surv) ++nsurv;
		else --nsurv;
	}
	nsurv=0;
	fin.seekg(0);
	fin >> n;
	for (int i=0; i<n; ++i) {
		fin >> a;
		if (a==surv) ++nsurv;
	}
	if (nsurv>n/2) fout << surv << ' ' << nsurv;
	else fout << -1;
	return 0;
}