Cod sursa(job #1786596)

Utilizator medicinedoctoralexandru medicinedoctor Data 23 octombrie 2016 12:59:04
Problema Elementul majoritar Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>
#include <vector>
#include <iostream>

using namespace std;

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

int n,nr,x;
vector <int> a,b;

int cn(int x)
{
    int c=0;
    for (int i=0; i<n; i++)
    {
        if (a[i]==x) c++;
    }
    return c;
}

main()
{
    cin >> n;
    a.resize(n);
    for (int i=0; i<n; i++)
    {
        cin >> x;
        a[i]=x;
        if (b.empty() || b[0]==x) b.push_back(x); else b.pop_back();
    }
    nr=cn(b[0]);
    if (b.empty() || nr<((n/2)+1)) cout << -1;
    else cout << b[0] << ' ' << nr;
}