Cod sursa(job #2394883)

Utilizator S_AndyAndrei S S_Andy Data 2 aprilie 2019 04:11:43
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>
#include <algorithm>

using namespace std;

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

int main()
{
	int n, *v;
	fin >> n;
	v = new int[n];
	for (int i = 0; i < n; ++i) {
		fin >> v[i];
	}
	sort(v, v + n);

	int elmaj = v[n / 2], s = -1;
	for (int i = n / 2; i < n; ++i) {
		if (v[i] == elmaj) {
			++s;
		}
		else {
			break;
		}
	}
	for (int i = n / 2; i < n; --i) {
		if (v[i] == elmaj) {
			++s;
		}
		else {
			break;
		}
	}
	if (s > n / 2) {
		fout << elmaj << " " << s;
	}
	else {
		fout << -1;
	}
}