Cod sursa(job #1389241)

Utilizator raduzxstefanescu radu raduzx Data 16 martie 2015 09:29:05
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include <fstream>

using namespace std;
int v[1000002];
int main()
{
    ifstream f("elmaj.in");
    ofstream g("elmaj.out");
    int n,i,k,elem,poz;
    f>>n;
    f>>v[1];
    elem=v[1];
    poz=1;
    k=1;
    for(i=2;i<=n;i++)
    {
        f>>v[i];
        if(v[i]==elem)
            k+=1;
        else
            k-=1;
        if(k<0)
        {
            elem=v[i];
            k=1;
        }
    }
    k=0;
    for(i=1;i<=n;i++)
        if(v[i]==elem)
            k+=1;
    if(k>=n/2+1)
        g<<elem<<" "<<k;
    else
        g<<"-1";
    return 0;
}