Cod sursa(job #1623531)

Utilizator alexsandulescuSandulescu Alexandru alexsandulescu Data 1 martie 2016 20:02:53
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Teme Pregatire ACM Unibuc 2013 Marime 0.46 kb
#include <fstream>

using namespace std;
ifstream f ("elmaj.in");
ofstream g ("elmaj.out");
long long n,k,nr,a[1000003];
int main()
{
    f>>n;
    f>>a[1];
    nr=a[1];
    k=1;
    for(int i=2;i<=n;i++){
        f>>a[i];
        if(nr==a[i])k++;
        else k--;
        if(k==0){k=1;nr=a[i];}
    }
    k=0;
    for(int i=1;i<=n;i++){
        if(a[i]==nr)k++;
    }
    if(k>n/2)g<<nr<<" "<<k<<'\n';
    else g<<-1<<'\n';
    return 0;
}