Cod sursa(job #635177)
Utilizator | Data | 18 noiembrie 2011 17:38:51 | |
---|---|---|---|
Problema | Elementul majoritar | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.36 kb |
#include <fstream>
#include <algorithm>
#define N 1000010
std::ifstream in ("elmaj.in");
std::ofstream out ("elmaj.out");
int a[N],i,k,nk,n;
int main () {
in>>n;
for (i=0; i<n; i++) in>>a[i];
std::nth_element (a,a+n/2,a+n);
k=a[n/2];
for (i=0; i<n; i++) if (a[i]==k) nk++;
if (nk>=n/2) out<<k<<" "<<nk<<"\n";
else out<<"-1\n";
return 0;
}