Cod sursa(job #643346)

Utilizator proflaurianPanaete Adrian proflaurian Data 3 decembrie 2011 14:57:02
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <fstream>

using namespace std;

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

int n,i,x[1000001],m,c,*p;


int main()
{
    in>>n;
	for(i=0;i<n;++i){in>>x[i];}
    m=x[0];c=1;
    for(p=x+1;*p;p++)
    {
        if(*p==m){c++;continue;}
        c--;
        if(c<0){c=1;m=*p;}
    }
    if(!c)out<<"-1\n";//printf("-1\n");
    else
    {
        for(p=x,c=0;*p;p++)
        if(*p==m)c++;
        if(c<=n-c)out<<"-1\n";//printf("-1\n");
        else out<<m<<' '<<c<<'\n';//printf("%d %d",m,c);
    }
    return 0;
}