Cod sursa(job #1443308)

Utilizator FlorinHajaFlorin Gabriel Haja FlorinHaja Data 27 mai 2015 16:46:33
Problema Elementul majoritar Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <fstream>

using namespace std;

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

int n, i, fact, k, nr;
int a[1000001];

int main()
{
    f >> n;
    for (i = 1; i <= n; i++)
        f >> a[i];

    for (i = 1; i <= n; i++)
    {
        if (!k)
            fact = a[i], k = 1;
        if (a[i] == fact)
            k++;
        else
            k--;
    }

    for (i = 1; i <= n; i++)
        if (a[i] == k)
            nr++;

    if (nr >= n/2+1)
        g << k << " " << nr;
    else
        g << -1;
    return 0;
}