Cod sursa(job #1411810)

Utilizator jurjstyleJurj Andrei jurjstyle Data 31 martie 2015 22:48:54
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f ("elmaj.in") ;
ofstream g ("elmaj.out") ;

int n, x[1000005];

int main()
{
	f >> n;
	for(int i = 0 ; i < n ; ++ i)
		f >> x[i];
	int candidat = x[0], contor = 1;
	for(int  i = 1; i < n ; ++i)
	{
		if(x[i] == candidat)
			contor++;
		else
			contor --;
		if(contor == 0)
			candidat = x[i], contor = 1;
	}
	contor = 0;
	for(int i = 0 ; i < n ; ++ i)
		if(x[i] == candidat)
			contor ++;
	if(contor > n/2)
		g  << candidat << " " << contor ;
	else
		g << "-1";
	return 0;
}