Cod sursa(job #674439)

Utilizator TheShadowsAlexandru Cristian TheShadows Data 6 februarie 2012 11:10:45
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include<stdio.h>
#include<algorithm>
using namespace std;
int v[1000000];
int main()
{
    int n;
    FILE *in=fopen("elmaj.in","r"),*out=fopen("elmaj.out","w");
    fscanf(in,"%d",&n);
    int i;
    for(i=1;i<=n;i++)
        fscanf(in,"%d",&v[i]);
    sort(v,v+n+1);
    int l=0; bool pp=false;
    for(i=1;i<=n;i++)
    {
        l=1;
        while(v[i]==v[i+1])
        {
            i++;
            l++;
        }
        if(l>=n/2+1)
        {
            fprintf(out,"%d %d\n",v[i],l);
            pp=true;
            break;
        }
    }
    if(pp==false)
        fprintf(out,"-1\n");
    return 0;
}