Cod sursa(job #1338969)
| Utilizator | Data | 10 februarie 2015 16:18:51 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 90 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.54 kb |
#include <iostream>
#include <fstream>
#include <map>
using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
map<unsigned int , unsigned int> fr;
int v[100000000];
int main()
{
int n;
bool ok = false;
f>>n;
for(int i = 0 ; i < n ; ++i){
f>>v[i];
++fr[v[i]];
}
for(int i = 0 ; i < 10000000 ; ++i)
if(fr[v[i]] >= (n / 2 + 1)){
g<<v[i]<<' '<<fr[v[i]];
ok = true;
break;
}
if(!ok)
g<<'-1';
return 0;
}
