Cod sursa(job #730192)

Utilizator fhandreiAndrei Hareza fhandrei Data 5 aprilie 2012 23:57:21
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
//Include
#include <fstream>
#include <utility>
#include <algorithm>
using namespace std;

//Constante
const int MAX_SIZE = (int)1e6;

//Variabile
ifstream in("elmaj.in");
ofstream out("elmaj.out");

int n;
int v[MAX_SIZE];
int dif, value;

//Main
int main()
{
	in >> n;
	for(int i=0 ; i<n ; ++i)
		in >> v[i];
	
	sort(v, v+n);
	value = v[n/2];
	if((dif = upper_bound(v, v+n, value) - lower_bound(v, v+n, value)) >= n/2+1)
		out << value << ' ' << dif << '\n';
	else
		out << "-1\n";
	
	in.close();
	out.close();
	return 0;
}