Cod sursa(job #643341)

Utilizator proflaurianPanaete Adrian proflaurian Data 3 decembrie 2011 14:48:07
Problema Elementul majoritar Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <fstream>

using namespace std;

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

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

void read(){
	in>>n;
	for(i=0;i<n;++i)in>>x[i];
}

int main()
{
    read();
    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)printf("-1\n");
    else
    {
        for(p=x,c=0;*p;p++)
        if(*p==m)c++;
        if(c<=n-c)printf("-1\n");
        else printf("%d %d",m,c);
    }
    return 0;
}