Cod sursa(job #1515196)

Utilizator adu18sptAndrei Mircea adu18spt Data 1 noiembrie 2015 11:45:52
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include<fstream>
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
unsigned long long int a[1000001],n,i,x,k=0,y=0;
int main()
{

    fin>>n;
    fin>>a[0];
    x=a[i];
    k=1;
    for(i=1;i<n;i++)
    {
        fin>>a[i];
        if(x!=a[i])
        {
            k--;
            if(k==0)
            {
                x=a[i];
                k=1;
            }
        }
        else{
            k++;
        }
    }
    for(i=0;i<n;i++)
    {
        if(a[i]==x)
        {
            y++;
        }
    }
    if(y>=n/2 + 1)
        fout<<x<<" "<<y;
    else
        fout<<-1;

}