Cod sursa(job #1545419)

Utilizator felipeGFilipGherman felipeG Data 6 decembrie 2015 18:52:26
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>
#define N 1000000
using namespace std;

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

int v[N], n, k, aux, nr;



int main()
{
    f >> n;
    for (int i = 0; i < n; ++i)
    {
        f >> v[i];
        if (k == 0)
        {
            aux = v[i];
            k = 1;
        }
        else if (v[i] == aux) k ++;
        else k --;
    }

    if (aux < 0)
        g << aux;

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

    if (nr > n / 2) g << aux << " " << nr;
    else g << "-1";


    return 0;
}