Cod sursa(job #2235137)

Utilizator ichb_stefiGavra Stefan ichb_stefi Data 26 august 2018 14:06:34
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>

using namespace std;

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

int v[1000005];
int main()
{
    int n;
    cin>>n;
    for(int i=1;i<=n;i++)
        cin>>v[i];
    int cand=v[1] , cnt=1;
    for(int i=2;i<=n;i++)
    {
        if(cand!=v[i])
            cnt--;
        else
            cnt++;
        if(cnt<0)
        {
            cand=v[i];
            cnt=1;
        }
    }
    cnt=0;
    for(int i=1;i<=n;i++)
    {
        if(v[i]==cand)
            cnt++;
    }
    if(cnt>=n/2+1)
        cout<<cand<<" "<<cnt;
    else
        cout<<"-1";
    return 0;
}