Cod sursa(job #1969029)

Utilizator mariastStoichitescu Maria mariast Data 18 aprilie 2017 10:29:29
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include<fstream>
using namespace std;
ifstream f ("elmaj.in");
ofstream g ("elmaj.out");
long long n,el,nr,i,a[1000001];
int main()
{
    f>>n;
    f>>a[1];
    el=a[1];
    nr=1;
    for(i=2;i<=n;i++){
        f>>a[i];
        if(nr==0) el=a[i],nr=1;
        else if(a[i]==el){
            nr++;
        }
        else{
            nr--;
        }
    }
    if(nr>0){
        nr=0;
        for(i=1;i<=n;i++){
            if(a[i]==el) nr++;
        }
        if(nr>=n/2+1) g<<el<<" "<<nr<<'\n';
        else g<<-1;
    }
    else g<<-1;
}