Cod sursa(job #1809108)

Utilizator alex98Andries Alexandru alex98 Data 18 noiembrie 2016 17:44:25
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
//
//  main.cpp
//  Elementul majoritar
//
//  Created by Alex Andries on 18.11.2016.
//  Copyright © 2016 Alex Andries. All rights reserved.
//

#include <fstream>

using namespace std;

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

int main()
{
    long long n,i,x,k,v[1000000];
    fin>>n;
    for(i=1;i<=n;i++) fin>>v[i];
    x=v[i]; k=1;
    for(i=2;i<=n;i++)
        if(v[i]==x) k++;
        else
        {
            k--;
            if(k<=-1)
            {
                x=v[i];
                k=1;
            }
        }
    k=0;
    for(i=1;i<=n;i++)
        if(x==v[i]) k++;
    if(k<n/2+1) fout<<-1;
    else fout<<x<<" "<<k;
    return 0;
}