Cod sursa(job #1267525)

Utilizator sulzandreiandrei sulzandrei Data 19 noiembrie 2014 23:41:53
Problema Elementul majoritar Scor 0
Compilator c Status done
Runda Arhiva educationala Marime 0.74 kb
#include <stdio.h>
int main()
{
    FILE *f,*g;
    char a[1000001];
    long int n,c,v,nr,i,cont;

    f = fopen("elmaj.in","r");
    g = fopen("elmaj.out","w");
     fscanf(f,"%d",&n);
    nr = 1;
    for(i=0;i<n;i++)
        a[i] = 0;
    fscanf(f,"%d",&c);
    a[c]++;
    for(i=1;i<n;i++)
     {
          if(nr==0)
         {
             c = v;
             nr = 1;
         }
         fscanf(f,"%d",&v);
         a[v]++;
         if (v == c)
             nr++;
         else
             nr--;
     }
     fclose(f);
     if (nr == 0)
        c = v;
     cont = (long int)a[c];
    if (cont<(n/2+1))
        fprintf(g,"nu e majoritar");
    else
        fprintf(g,"%d",c);
         fclose(g);
    return 0;

}