Cod sursa(job #1409013)

Utilizator mihaigeorgempMihai Mihai mihaigeorgemp Data 30 martie 2015 12:57:52
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include<fstream>
using namespace std;
ifstream in("elmaj.in");
ofstream out("elmaj.out");
int v[1000001];
int main()
{
    int i,a,n,s,nr;
    in>>n;
    for(i=1;i<=n;i++)
        in>>v[i];
    s=v[1];
    nr=1;
        for(i=2;i<=n;i++)
        {
            if(v[i]==s)
                nr++;
            else
            {
                nr--;
                if(nr==0)
                {
                    s=v[i];
                    nr=1;
                }
            }
        }
        nr=0;
        for(i=1;i<=n;i++)
        {
            if(v[i]==s)
                nr++;
        }
        if(nr>n/2)
            out<<s<<" "<<nr;
        else
            out<<"-1";
}