Cod sursa(job #2172377)
| Utilizator | Data | 15 martie 2018 16:14:04 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 60 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.53 kb |
#include <fstream>
using namespace std;
ifstream in("elmaj.in");
ofstream out("elmaj.out");
long long n,i,v[1000000],ap,cand;
int main()
{
in>>n;
for(i=1;i<=n;i++)
in>>v[i];
cand=v[1];
ap=1;
for(i=2;i<=n;i++)
{
if(v[i]==cand) ap++;
else ap--;
if(ap=0)
{
cand=v[i];
ap=1;
}
}
ap=0;
for(i=1;i<=n;i++)
if(v[i]==cand) ap++;
if(ap>=n/2+1) out<<cand<<" "<<ap;
else out<<-1;
return 0;
}
