Cod sursa(job #813311)

Utilizator test_666013Testez test_666013 Data 15 noiembrie 2012 10:28:45
Problema Elementul majoritar Scor 40
Compilator c Status done
Runda Arhiva educationala Marime 0.52 kb
#include <stdio.h>
#define MAX 1000001

int n,v[MAX];

int main()
{
    int nr,el,i;
    freopen("elmaj.in","r",stdin);
    freopen("elmaj.out","w",stdout);
        scanf("%d",&n);
        for(i=0;i<n;i++)scanf("%d",&v[i]);

        el=v[0];
        nr=1;
        for(i=1;i<n;i++)
        if(v[i]==el)nr++; else
        {
            nr--;
            if(nr<0)el=v[i];
        }
        nr=0;
        for(i=0;i<n;i++)
        if(v[i]==el)nr++;
        if(nr>n/2)printf("%d %d\n",el,nr); else
        printf("-1\n");
        return 0;
}