Cod sursa(job #1217411)

Utilizator Cristian1997Vintur Cristian Cristian1997 Data 7 august 2014 12:35:41
Problema Elementul majoritar Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
using namespace std;
#include <fstream>
ifstream fin("elmaj.in");


int main()
{
    int i, n, a, val = 0, nr = 0, ok;
    fin >> n;
    for(; n; --n)
    {
        fin >> a;
        if(a == val) ++nr;
        else if(nr) --nr;
        else val = a, nr = 1;
    }
    fin.close();
    if(nr)
    {
        ifstream fin("elmaj.in");
        fin >> n;
        for(i = nr = 0; i < n; ++i)
        {
            fin >> a;
            if(a == val) ++nr;
        }
        if(nr >= 1 + n / 2) ok = 1;
        else ok = 0;
    }
    else ok = 0;
    
    ofstream fout("elmaj.out");
    if(!ok) fout << "-1\n";
    else fout << val << ' ' << nr << '\n';
    fout.close();
    return 0;
}