Cod sursa(job #2101168)

Utilizator marcudanfDaniel Marcu marcudanf Data 6 ianuarie 2018 22:50:57
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <fstream>

using namespace std;

int n, nr, v[1000005], elmaj = -1;

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

int main(){
	fin>>n;
	for(int i = 0; i < n; i++){
		fin >> v[i];
		if(elmaj == -1)
			elmaj = v[i];
		if(elmaj != v[i]){
			nr--;
			if(nr == 0)
				elmaj = -1;
		}else
			nr++;
	}
	if(elmaj == -1){
		fout << -1;
		return 0;
	}
	nr = 0;
	for(int i = 0; i < n; i++)
		if(v[i] == elmaj)
			nr++;
	fout << elmaj << ' ' << nr;
	return 0;
}