Cod sursa(job #2098019)

Utilizator MattCMatei Coroiu MattC Data 2 ianuarie 2018 01:03:22
Problema Elementul majoritar Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <fstream>
using namespace std;
int i, c, nr, nr1, n, v[100005];
ifstream cin("elmaj.in");
ofstream cout("elmaj.out");
int main()
{
    cin>>n;
    c=0;
    nr=0;
    for(i=1;i<=n;i++)
    {
        cin>>v[i];
        if(nr==0)  nr=1, c=v[i];
         else if(c!=v[i]) nr--;
             else nr++;
    }
    nr1=0;
    for(i=1;i<=n;i++)
        if(v[i]==c) nr1++;
    if(nr1>=n/2+1) cout<<c<<' '<<nr1;
    else cout<<"-1";
    return 0;
}