Cod sursa(job #2520114)

Utilizator Rares31100Popa Rares Rares31100 Data 8 ianuarie 2020 22:56:09
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
#include <bits/stdc++.h>

using namespace std;

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

int n;
int candidat;
int apar;
int val[1000001];

int main()
{
    in>>n;

    for(int k=1;k<=n;k++)
    {
        in>>val[k];

        if(apar==0)
        {
            apar++;
            candidat=val[k];
        }
        else if(candidat!=val[k])
            apar--;
        else
            apar++;
    }

    int aparC=0;

    for(int i=1;i<=n;i++)
        if(candidat==val[i])
            aparC++;

    if(aparC>=n/2+1)
        out<<candidat<<' '<<aparC;
    else
        out<<-1;

    return 0;
}