Cod sursa(job #2156957)

Utilizator LXGALXGA a LXGA Data 9 martie 2018 09:16:32
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>
#include <cmath>
using namespace std;
ifstream cin("elmaj.in");
ofstream cout("elmaj.out");
int main()
{
    int n,i,cand=0,nr=0;
    cin>>n;
    int v[n+1];
    for(i=1;i<=n;i++)
    {
        cin>>v[i];
    }
    cand=v[1];
    nr=1;
    for(i=2;i<=n;i++)
    {
        if(cand!=v[i])
            nr--;
        else if(cand==v[i])
                nr++;
        if(nr==0)
            cand=v[i],nr=1;
    }
    //cout<<cand;
    nr=0;
    for(i=1;i<=n;i++)
    {
        if(cand==v[i])
            nr++;
    }
    if(nr>=n/2+1)
    {
        cout<<cand<<" "<<nr;
    }
    else
        cout<<"-1";
    return 0;
}