Cod sursa(job #2098021)

Utilizator MattCMatei Coroiu MattC Data 2 ianuarie 2018 01:09:26
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include <fstream>
using namespace std;
long long i, c, nr, nr1, n, v[1000009];
ifstream cin("elmaj.in");
ofstream cout("elmaj.out");
int main()
{
    cin>>n;
    c=0;
    nr=0;
    for(i=1;i<=n;i++)
    {
        cin>>v[i];
        if(nr==0)  nr=1, c=v[i];
         else if(c!=v[i]) nr--;
             else nr++;
    }
    nr1=0;
    for(i=1;i<=n;i++)
        if(v[i]==c) nr1++;
    if(nr1>=n/2+1) cout<<c<<' '<<nr1;
    else cout<<"-1";
    return 0;
}