Cod sursa(job #1996058)
Utilizator | Data | 29 iunie 2017 20:10:34 | |
---|---|---|---|
Problema | Elementul majoritar | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.61 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream in("elmaj.in");
ofstream out("elmaj.out");
const int NMax = 1e6 + 5;
int N;
int v[NMax];
int main() {
in>>N;
for (int i=1;i <= N;++i) {
in>>v[i];
}
sort(v+1,v+N+1);
int val = -1, nr = 1;
for (int i=1;i <= N;++i) {
if (v[i] == val) {
++nr;
}
else {
if (nr > N/2) {
out<<val<<' '<<nr<<'\n';
return 0;
}
nr = 1;
val = v[i];
}
}
in.close();out.close();
return 0;
}