Cod sursa(job #2113911)

Utilizator AlexandruPaulSirbu Alex AlexandruPaul Data 25 ianuarie 2018 11:28:10
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include <iostream>
#include <fstream>
#define Maxx 1000001
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int A[Maxx],i,k,x,n,a;
int main()
{
    fin>>n;
    k=0;
    x=0;
    for (i=1;i<=n;i++)
    {
        fin>>A[i];
        a=A[i];
        if (k==0)
        {
            x=a;
            k=1;
        }
        else
        {
            if (x==a)
                k++;
            else
                k--;
        }
    }
    k=0;
    for (i=1;i<=n;i++)
        if (A[i]==x)
            k++;
    if (k>=n/2+1)
        fout<<x<<' '<<k;
    else
        fout<<'-1';
    fin.close();
    fout.close();
    return 0;
}