Cod sursa(job #1589758)

Utilizator RadduFMI Dinu Radu Raddu Data 4 februarie 2016 13:19:48
Problema Elementul majoritar Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int n,nr,ap,v[1000005];
int main()
{ int i,x;
    f>>n;

    for(i=1;i<=n;i++)
    { f>>v[i]; x=v[i];
      if (!ap) {ap=1; nr=x;}
       else
        if (x!=nr) {ap--; if (!ap) {ap=1; nr=x;} }
    }
    ap=0;
    for(i=1;i<=n;i++)
     if (v[i]==nr) ap++;

    if (ap>n/2) g<<nr<<" "<<ap; else g<<"-1";

    return 0;
}