Cod sursa(job #1545395)

Utilizator DysKodeTurturica Razvan DysKode Data 6 decembrie 2015 18:30:08
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <fstream>

using namespace std;

ifstream fin("elmaj.in");
ofstream fout("elmaj.out");

int tp,nr,i,j,n,x,v[1000010];

int main()
{
    fin>>n;

    for( i = 1 ; i <= n; i++ )
    {
        fin>>x;
        v[ i ]=x;
        if( nr == 0 )
        {
            tp = x;
            nr = 1;
        }
        else if( tp == x )
            nr++;
        else if( tp != x )
            nr--;
    }
    nr = 0;
    for( i = 1 ; i <= n ; i++ )
    {
        if( v[i] == tp )
            ++nr;
    }

    if( nr > n / 2 )
    {
        fout<<tp<<' '<<nr;
    }
    else
        fout<<-1;

return 0;
}