Cod sursa(job #1947109)

Utilizator AkrielAkriel Akriel Data 30 martie 2017 19:11:34
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
#include <bits/stdc++.h>

using namespace std;

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

const int N = 1e6+1;

long long int numbers[N], totalNumbers, searchedNumber, contor;

int main(){
    fin >> totalNumbers;
    for ( int index = 1; index <= totalNumbers; index++ )
        fin >> numbers[index];

    nth_element(numbers+1, numbers+totalNumbers/2, numbers+totalNumbers+1);
    searchedNumber = numbers[totalNumbers/2];

    for ( int index = 1; index <= totalNumbers; index++ )
        if ( numbers[index] == searchedNumber )
            contor++;

    if ( contor > totalNumbers/2 )
        fout << searchedNumber << " " << contor;
    else
        fout << -1;
}