Cod sursa(job #656548)

Utilizator giuliastefGiulia Stef giuliastef Data 4 ianuarie 2012 19:47:55
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <fstream>
using namespace std;
int n,x[1000011];
int main()
{
    int i,el,k;
    ifstream f("elmaj.in");
    ofstream g("elmaj.out");
    f>>n;
    for(i=1;i<=n;++i)
     f>>x[i];
    el=x[1]; k=1;
    for(i=2;i<=n;++i)
     if(k==0) el=x[i],k=1;
     else
      if(el==x[i]) k++;
      else
       k--;
    k=0;
    for(i=1;i<=n;++i)
     if(el==x[i]) k++;
    if(k>=n/2+1) g<<el<<" "<<k<<"\n";
     else g<<"-1\n";
    return 0;
}