Cod sursa(job #2402774)

Utilizator The_one_and_onlyMironica Vasile The_one_and_only Data 11 aprilie 2019 00:16:32
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>
#include <vector>
#define mod 563287
using namespace std;

ifstream cin("elmaj.in");
ofstream cout("elmaj.out");

struct Nr {
	int val, count;
};

int n;
vector<Nr> a[mod];

void solve() {
	for(int i = 0; i < mod; i++)
		for(auto &x: a[i])
			if(x.count > n / 2) {
				cout << x.val << ' ' << x.count;
				return;
			}
	cout << -1;
}

int main() {
	cin >> n;
	for(int j = 0; j < n; j++) {
		int h;
		cin >> h;
		int m = h % mod;
		int i = 0;
		while(i < a[m].size() && a[m][i].val != h)
			i++;
		if(i == a[m].size())
			a[m].push_back({h, 1});
		else
			a[m][i].count++;
	}
	solve();
	return 0;
}