Cod sursa(job #1739833)

Utilizator dumitru123Patularu Mihai dumitru123 Data 10 august 2016 12:39:17
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <cstdio>
using namespace std;
long long n, nr, elm=-1, i,v[1000003];
int main()
{
    freopen("elmaj.in","r",stdin);
    freopen("elmaj.out","w",stdout);
    scanf("%llu",&n);
    for (i=1; i<=n; i++)
    {
        scanf("%llu",&v[i]);
        if (nr == 0)
        {
            nr++;
            elm = v[i];
        }
        else if (v[i] == elm)
            nr++;
        else
            nr--;
    }
    nr = 0;
    for (i=1; i<=n; i++)
        if (elm == v[i])
            nr++;
    if (nr >= n/2+1)
        printf("%llu %llu",elm,nr);
    else
        printf("-1");

    return 0;
}