Cod sursa(job #1348599)

Utilizator sorynsooSorin Soo sorynsoo Data 19 februarie 2015 19:40:24
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <cstdio>
using namespace std;
int i,n,v[1000005],crt=-1,k,nr;
int main()
{
   freopen("elmaj.in","r",stdin);
   freopen("elmaj.out","w",stdout);
   scanf("%d",&n);
   for(i=1; i<=n; i++)
   {
        scanf("%d",&v[i]);
        if(k==0)
            crt=v[i],k=1;
        else
        {
            if(crt==v[i])
                k++;
            else
                k--;
        }
   }
   for(i=1; i<=n; i++)
    if(v[i]==crt)
        nr++;
   if(nr>=n/2+1)
    printf("%d %d",crt,nr);
   else
    printf("-1");

}