Cod sursa(job #1331164)
| Utilizator | Data | 31 ianuarie 2015 12:48:50 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Teme Pregatire ACM Unibuc 2013 | Marime | 0.57 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int a[1000000],fr;
int main()
{
int i,n,c=0,k=0,fr=0;
f>>n;
for(i=1;i<=n;i++){
f>>a[i];
}
for(i=1;i<=n;i++){
if(a[i]==a[i+1]){
fr++;
c=a[i];
}
else {
fr--;
if(fr==0)
c=a[i+1];
}
}
for(i=1;i<=n;i++){
if(c==a[i])
k++;
}
if(fr>n/2)
g<<c<<" "<<k;
else g<<"-1";
return 0;
}
