Cod sursa(job #2340296)

Utilizator SochuDarabaneanu Liviu Eugen Sochu Data 10 februarie 2019 11:04:00
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.54 kb
#include <bits/stdc++.h>
#define NMAX 1000003

using namespace std;

ifstream f ("elmaj.in");
ofstream g ("elmaj.out");

int cunt=0, cand=-1,i,n,nr;
int v[NMAX];

int main()
{
   f>>n;
   for(i=1;i<=n;i++)
        f>>v[i];
   for(i=1;i<=n;i++)
   {
       if(cand != v[i])
        {
            if(cunt==0)
            cand=v[i] , cunt =0;
          else  cunt--;
        }
       else cunt++;
   }
     for(i=1;i<=n;i++)
        if(v[i]==cand)nr++;
     if(nr>=(n+1)/2)g<<cand<<' '<<nr;
     else  g<<-1;


    return 0;
}