Cod sursa(job #914811)

Utilizator flemixFiru Denis flemix Data 14 martie 2013 14:38:40
Problema Elementul majoritar Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.97 kb
#include<stdio.h>
int n,i,viz[1000001],a[1000001],b[1000001],c,k,x,j,max;
long long v[1000001];
int main()
{
    freopen("elmaj.in","r",stdin);
    freopen("elmaj.out","w",stdout);
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    {
        scanf("%lld",&v[i]);
    }
    c=0;
    for(i=1;i<=n;i++)
    {
        k=0;
        x=0;
        if(viz[i]==0)
        {
            for(j=i+1;j<=n;j++)
            {
                if(v[i]==v[j])
                {
                    k++;
                    viz[j]=1;
                    x=v[i];

                }
            }
            c++;
            a[c]=v[i];
            b[c]=k+1;
        }
    }
    max=-1000000;
    for(i=1;i<=c;i++)
    {
        if(max<b[i])
        {
            max=b[i];
            x=a[i];
        }
    }
    c=(n/2)+1;
    if(max>c/2+1)
    {
        printf("%d %d",x,max);
    }
    else
    {
        printf("-1");
    }
    fclose(stdout);
    return 0;
}