Cod sursa(job #1495830)

Utilizator PaulCbnCiobanu Paul PaulCbn Data 3 octombrie 2015 18:21:06
Problema Elementul majoritar Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <cstdio>

using namespace std;


int n;
long long v[1000001];
int main()
{
    scanf("%d",&n);
    int nr = 0;
    long long elem = -1;
    for(int i = 1; i<=n; i++)
    {
        scanf("%lld",&v[i]);
        if(nr == 0)
        {
            elem = v[i];
            nr=1;
        }
        else if(elem == v[i])
            nr--;
        else
            nr++;
    }
    int verificare = 0;
    for(int i =1 ;i<=n;i++)
        if(v[i] == elem)
            verificare++;
        if(verificare>=n/2+1)
            printf("%lld %d",elem,verificare);
        else
            printf("-1");

    return 0;
}