Cod sursa(job #1065231)

Utilizator gabrielinelusGabriel-Robert Inelus gabrielinelus Data 22 decembrie 2013 23:49:16
Problema Elementul majoritar Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.72 kb
#include <cstdio>
#include <vector>
#include <algorithm>

using namespace std;
vector<int> V;

int main()
{
    freopen("elmaj.in","r",stdin);
    freopen("elmaj.out","w",stdout);

    int N,x;
    scanf("%d",&N);
    for(int i = 1; i <= N; ++i){
        scanf("%d",&x);
        V.push_back(x);
    }
    int em = 0,nt,cnt = 1;
    sort(V.begin(),V.end());
    for(int i = 1 ; i < N; ++i)
        if( V[i-1] == V[i]){
        ++cnt;
        }
        else{
            if(cnt >= N/2 + 1)
            {
                em = V[i-1];
                nt = cnt;
                printf("%d %d",em,nt);
                return 0;
            }
            cnt = 1;
        }
    printf("-1");
    return 0;
}