Cod sursa(job #1331167)

Utilizator SckiffoMarius Jucan Sckiffo Data 31 ianuarie 2015 12:50:01
Problema Elementul majoritar Scor 70
Compilator cpp Status done
Runda Teme Pregatire ACM Unibuc 2013 Marime 0.58 kb
#include <iostream>
#include <fstream>

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

int a[1000000],fr;
int main()
{
    int i,n,c=0,k=0,fr=0;
    f>>n;
    for(i=1;i<=n;i++){
        f>>a[i];
    }
    for(i=1;i<=n;i++){
        if(a[i]==a[i+1]){
            fr++;
            c=a[i];
        }
        else {
            fr--;
            if(fr==0)
                c=a[i+1];
        }
    }
    for(i=1;i<=n;i++){
        if(c==a[i])
            k++;
    }
    if(k>n/2)
        g<<c<<" "<<k;
    else
        g<<"-1";
    return 0;
}