Cod sursa(job #1690830)

Utilizator RaduMirceaAndreiRadu Mircea Andrei RaduMirceaAndrei Data 15 aprilie 2016 21:47:37
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
# include <fstream>
# define DIM 1000010
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int v[DIM],n,nr,i,c;
int main () {
    fin>>n;
    for(i=1;i<=n;i++){
        fin>>v[i];
        if(nr==0){
            c=v[i];
            nr++;
        }
        else{
            if(c==v[i])
                nr++;
            else
                nr--;
        }
    }
    if(nr==0)
        fout<<-1;
    else{
        nr=0;
        for(i=1;i<=n;i++)
            if(v[i]==c)
                nr++;
        if(nr>=n/2+1)
            fout<<c<<" "<<nr<<"\n";
        else
            fout<<-1<<"\n";
    }
    return 0;
}