Cod sursa(job #1001461)
| Utilizator | Data | 24 septembrie 2013 23:41:17 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 70 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.59 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
const int nMax = 1000000;
int frec[nMax];
int main()
{
int n, maj;
fin >> n;
maj = n/2 +1;
for(int i=0;i<n;i++){
int nr;
fin >> nr;
frec[nr]++;
}
bool found = false;
for(int i=0; i<n; i++){
if(frec[i] >= maj){
fout << i << ' ' << frec[i] << ' ';
found = true;
break;
}
}
if(!found){
fout << -1 << endl;
}
return 0;
}
