Cod sursa(job #1551718)

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