Cod sursa(job #2154388)

Utilizator bodea.georgianaBodea Georgiana bodea.georgiana Data 6 martie 2018 22:01:59
Problema Elementul majoritar Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <stdio.h>

using namespace std;
FILE *f,*g;

int v[1000000];

int main()
{
    int n,i,j,nr=0,val;
    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(nr==0)
        {
            val=v[i];
            ++nr;
        }
        else
            if(val==v[i])
                ++nr;
            else
                --nr;
    }
    nr=0;
    for(i=1;i<=n;++i)
        if(v[i]==val)
            ++nr;
    if(nr>=n/2+1)
        fprintf(g,"%d %d",val,nr);
    else
        fprintf(g,"-1");
    fclose(f);
    fclose(g);
    return 0;
}