Cod sursa(job #1654846)

Utilizator valentin50517Vozian Valentin valentin50517 Data 17 martie 2016 15:54:33
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include <bits/stdc++.h>

using namespace std;

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

int A[1000100],N,k,el,nr;
int main(){
	ios::sync_with_stdio(0);
	fin.tie(0);
	fin >> N;
	for(int i = 0;i<N;i++) fin >> A[i];
	for(int i = 0;i<N;i++){
		if(k == 0) el = A[i], k = 1;else
		if(el == A[i]) k++;
		else k--;
	}
	for(int i = 0;i<N;i++) if(el == A[i]) nr++;
	if(nr >= N/2+1) fout << el << ' ' << nr;
	else fout << -1;

	return 0;
}