Cod sursa(job #3216249)

Utilizator mihaihvhTuburlui Mihai mihaihvh Data 15 martie 2024 19:13:24
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
#include <fstream>

using namespace std;

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

int v[1000001];

int main() {
    int n, fr = 0;
    int elmaj = 0;
    cin >> n;
    ++fr;
    cin >> v[0];
    for (int i = 1; i < n; ++i) {
        cin >> v[i];
        if (elmaj == v[i]) {
            ++fr;
        }
        else {
            --fr;
            if (fr == 0) {
                elmaj = v[i];
                fr++;
            }
        }
    }
    fr = 0;
    for (int i = 0; i < n; ++i)
        if (elmaj == v[i]) ++ fr;

    if (fr >= ((n / 2) + 1))
        cout << elmaj << ' ' << fr;
    else cout << -1;

    return 0;
}