Cod sursa(job #2500589)
| Utilizator | Data | 28 noiembrie 2019 11:59:00 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.48 kb |
#include <fstream>
#include <algorithm>
using namespace std;
int n, i, j, f[1000000], nr;
ifstream fin ("elmaj.in");
ofstream fout ("elmaj.out");
int main () {
fin>>n;
for (i=1;i<=n;i++) {
fin>>f[i];
}
sort(f+1, f+n+1);
i=0; j=0;
while (i<n) {
j=i;
while (j<n && f[j+1]==f[i])
j++;
if (j-i+1>n/2) {
fout<<f[i]<<" "<<j-i+1;
return 0;
}
i=j+1;
}
fout<<-1;
return 0;
}
