Cod sursa(job #1065235)

Utilizator gabrielinelusGabriel-Robert Inelus gabrielinelus Data 22 decembrie 2013 23:56:12
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Teme Pregatire ACM Unibuc 2013 Marime 0.77 kb
#include <fstream>
#include <vector>
#include <algorithm>

using namespace std;
vector<int> V;

int main()
{
    ifstream fin("elmaj.in");
    ofstream fout("elmaj.out");

    int N,x;

    fin >> N;
    for(int i = 1; i <= N; ++i){
        fin >> x;
        V.push_back(x);
    }
    fin.close();

    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;
                fout << em <<" " << nt;
                fout.close();
                return 0;
            }
            cnt = 1;
        }
    fout << -1;
    fout.close();
    return 0;
}