Cod sursa(job #2528997)

Utilizator rares_ciocieaRares Andrei Ciociea rares_ciociea Data 22 ianuarie 2020 20:30:11
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.69 kb
#include <fstream>

using namespace std;
ifstream in("elmaj.in");
ofstream out("elmaj.out");
int v[1000001];
int main()
{
    int n,k1,j,k,nr,cnt=0,i;
    in>>n;
    in>>v[1];
    int elem=v[1];
    int ap=1;
    for(j=2; j<=n; j++)
    {
        in>>v[j];
        k=v[j];
        if(ap==0)
            elem=k,ap++;
        else
        {
            if(k==elem)
                ap++;
            if(k!=elem)
                ap--;
        }
    }
    if(ap==0)
    {
        out<<-1;
        return 0;
    }

    for(i=1;i<=n;i++)
    {

        if(v[i]==elem)
            cnt++;
    }
    if(cnt>n/2)
        out<<elem<<" "<<cnt ;
    else out<<-1;
    return 0;
}