Cod sursa(job #1278672)
Utilizator | Data | 29 noiembrie 2014 10:43:56 | |
---|---|---|---|
Problema | Elementul majoritar | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.43 kb |
#include <fstream>
#include<algorithm>
#define tip long double
using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int n,v[1000005],i,R,L,m;
int main()
{
f>>n;
for(i=1;i<=n;i++)
f>>v[i];
sort(v+1,v+n+1);
m=v[n/2+1];
L=R=n/2+1;
while(v[L-1]==m)
L--;
while(v[R+1]==m)
R++;
if(R-L>=n/2)
g<<m<<" "<<R-L+1;
else g<<"-1";
return 0;
}