Cod sursa(job #1111458)
Utilizator | Lup Vasile https | Data | 18 februarie 2014 21:28:12 |
---|---|---|---|
Problema | Elementul majoritar | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.44 kb |
#include <iostream>
#include <fstream>
using namespace std;
#define cout g
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int k,v[1000001],i,n,cand;
int main()
{
f>>n;
for(i=1;i<=n;++i)
{
f>>v[i];
if (k==0) cand=v[i];
if (v[i]==cand) ++k;
else --k;
}
k=0;
for(i=1;i<=n;++i) if (v[i]==cand) ++k;
if (k>=n/2) cout<<cand<<' '<<k;
else cout<<-1;
return 0;
}