Cod sursa(job #1723461)
| Utilizator | Data | 30 iunie 2016 18:06:12 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 80 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.6 kb |
#include <fstream>
#include <algorithm>
using namespace std;
long long n,v[1000001],i,ok,ap;
ifstream fin ("elmaj.in");
ofstream fout ("elmaj.out");
int main (){
fin>>n;
for (i=1;i<=n;i++){
fin>>v[i];
}
sort (v+1,v+n+1);
ap = 1;
ok = 0;
for (i=2;i<=n;i++){
if (v[i] == v[i-1])
ap++;
else{
if (ap >= n/2+1){
fout<<v[i-1]<<" "<<ap;
ok = 1;
break;
}
ap = 1;
}
}
if (ok == 0)
fout<<-1;
return 0;
}
