Cod sursa(job #1456614)

Utilizator Theodor1000Cristea Theodor Stefan Theodor1000 Data 1 iulie 2015 13:35:01
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <fstream>

using namespace std;

int v[1000010];

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

    int n;
    f >> n;

    int nr = 0, maj = 0;
    for (int i = 1; i <= n; ++i)
    {
        f >> v[i];
        if (v[i] == maj) ++nr;
        else --nr;

        if (nr < 0) maj = v[i], nr = 1;
    }

    nr = 0;
    for (int i = 1; i <= n; ++i)
        if (v[i] == maj) ++nr;

    if (nr >= n / 2 + 1) g << maj << " " << nr << '\n';
    else g << "-1\n";

    return 0;
}