Cod sursa(job #1723469)

Utilizator refugiatBoni Daniel Stefan refugiat Data 30 iunie 2016 18:28:20
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream si("elmaj.in");
ofstream so("elmaj.out");
int v[1000005];
int main()
{
    int n;
    si>>n;
    int i;
    int cont=0;
    int a=0;
    for(i=1;i<=n;++i)
    {
        si>>v[i];
        if(a!=v[i])
        {
            --cont;
        }
        else
            ++cont;
        if(cont<0)
        {
            a=v[i];
            cont=1;
        }
    }
    cont=0;
    for(i=1;i<=n;++i)
    {
        if(a==v[i])
            cont++;
    }
    if(cont>n/2)
    {
        so<<a<<' '<<cont<<'\n';
    }
    else
    {
        so<<-1<<'\n';
    }
    so.close();
    return 0;
}