Cod sursa(job #1640684)

Utilizator Coroian_DavidCoroian David Coroian_David Data 8 martie 2016 18:52:33
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include <iostream>
#include <cstdio>
using namespace std;
FILE *f,*g;
int i,n,nr,c,v[1000001];
int main()
{
    f=fopen("elmaj.in","r");
    g=fopen("elmaj.out","w");
    fscanf(f,"%d",&n);
    for(i=1;i<=n;i++)
    {
        fscanf(f,"%d",&v[i]);
        if(v[i]==nr)
            c++;
        else
        {
            if(c>1)
                c--;
            else
                c=1,nr=v[i];
        }
    }
  //  printf("%d",c);
    c=0;
    for(i=1;i<=n;i++)
    {
        if(v[i]==nr)
            c++;
    }
    if(c>=n/2+1)
        fprintf(g,"%d %d",nr,c);
    else
        fprintf(g,"-1");
    fclose(f);
    fclose(g);
    return 0;
}