Cod sursa(job #1545446)

Utilizator andytosaAndrei Tosa andytosa Data 6 decembrie 2015 19:11:52
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Teme Pregatire ACM Unibuc 2013 Marime 0.66 kb
#include <fstream>

using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");

int n,a,b,x,v[1000010],nr;
int main()
{
    fin>>n;
    fin>>a;
    x++;
    v[0] = a;
    for(int i = 1; i < n; ++i){
        fin>>b;
        v[i] = b;
        if(a != 0){
            if(a == b){
                x++;
            }
            else {
                x--;
                if(x == 0)
                    a = 0;
            }
        }
        else {
            a = b;
            x = 1;
        }
    }
    fout<<a;
    for(int i = 0; i < n; ++i)
        if(v[i] == a)
            nr++;
    fout<<" "<<nr;
    return 0;
}