Cod sursa(job #1168644)

Utilizator lacraruraduRadu Matei Lacraru lacraruradu Data 9 aprilie 2014 10:05:47
Problema Elementul majoritar Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <fstream>

using namespace std;

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

int v[1000001];

int main()
{
    int n , i , elm , counter;

    in>>n;

    counter = 1;
    elm = 0;
    for(i = 1 ; i <= n ; i++)
    {
        in>>v[i];
        if(v[i] != elm)
            counter--;

        if(counter == 0)
        {
            elm = v[i];
            counter = 1;
        }
    }

    counter = 0;

    for(i = 1 ; i <= n ; i++)
        if(v[i] == elm)
            counter++;

    if(counter < n / 2 + n % 2)
    {
        out<<-1<<'\n';
        return 0;
    }

    out<<elm<<' '<<counter<<'\n';
    return 0;
}