Cod sursa(job #2211500)

Utilizator ContDeRacistAliniateEBlat ContDeRacist Data 10 iunie 2018 17:59:05
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.72 kb
#include <fstream>

using namespace std;

ifstream cin("elmaj.in");
ofstream cout("elmaj.out");

const int N = 1000007;

int v[N];

int main()
{
    int n, el(-1), k(0);
    cin >> n;
    for (int i = 0; i < n; ++i) {
        cin >> v[i];
        if (k == 0) {
            el = v[i];
        }
        if (el == v[i]) {
            ++k;
        }
        else {
            --k;
        }
    }
    if (el == -1 || k == 0) {
        cout << -1;
        return 0;
    }
    int lol(0);
    for (int i = 0; i < n; ++i) {
        if (el == v[i]) {
            ++lol;
        }
    }
    if (lol > n / 2) {
        cout << el << " " << lol;
    }
    else {
        cout << -1;
    }
    return 0;
}