Cod sursa(job #2312156)

Utilizator JeomIlascu Beatrice Georgiana Jeom Data 4 ianuarie 2019 13:15:14
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.52 kb
#include <bits/stdc++.h>
#define N 1000010
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");

int n, a[N];
int main()
{
    int i, cand, vot;
    fin>>n;
    for(i=1;i<=n;++i) fin>>a[i];
    fin.close();

    cand=a[1]; vot=1;
    for(i=2;i<=n;++i)
        if(a[i]==cand) vot++;
        else if(vot>0) vot--;
            else {cand=a[i]; vot=1;}

    vot=0;
    for(i=1;i<=n;++i) if(a[i]==cand) vot++;
    if(vot>n/2) fout<<cand<<" "<<vot<<"\n";
    else fout<<"-1\n";
    return 0;
}