Cod sursa(job #1511880)

Utilizator AndreidgDragomir Andrei Valentin Andreidg Data 27 octombrie 2015 11:39:53
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include <fstream>
#include <algorithm>
using namespace std;
int main()
{long long a[1000001],n,i,nr=0,M=0;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
f>>n;
for(i=1;i<=n;i++)
{
    f>>a[i];
    if(nr==0)
    {
        M=a[i];
    }
    if(M==a[i])
    {
        nr++;
    }
    else
    {
        if(nr>0)
        {
            nr--;
        }
    }
}
nr=0;
for(i=1;i<=n;i++)
{
    if(a[i]==M)
    {
        nr++;
    }
}
if(nr>=n/2+1)
{
    g<<M<<" "<<nr;
}
else
{
    g<<-1;
}
f.close();
g.close();
    return 0;
}