Pagini recente » Cod sursa (job #1823796) | Cod sursa (job #907325) | Cod sursa (job #1313330) | Cod sursa (job #3311923) | Cod sursa (job #3349823)
#include <iostream>
#include <vector>
#include <utility>
#include <math.h>
#include <random>
#include <unordered_set>
#include <fstream>
using namespace std;
ifstream in("elmaj.in");
ofstream out("elmaj.out");
int main() {
ios_base::sync_with_stdio(false);
in.tie(nullptr);
int n;
in >> n;
vector<int> v(n);
for (int i = 0; i < n; i++) {
in >> v[i];
}
unordered_set<int> vizitat;
random_device rd;
mt19937 gen(rd());
uniform_int_distribution<> dist(0, n - 1);
for (int i = 0; i < 30; i++) {
int index = dist(gen);
if (vizitat.contains(v[index]))
continue;
vizitat.insert(v[index]);
int cnt = 0;
for (int j = 0; j < n; j++) {
if (v[j] == v[index])
cnt++;
}
if (cnt >= n/2 + 1) {
out << v[index] << " ";
out << cnt << endl;
break;
}
}
out << -1;
}