Cod sursa(job #3164512)

Utilizator Mihai_OctMihai Octavian Mihai_Oct Data 3 noiembrie 2023 15:03:51
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
const int mod = 100019;
int n, i, a[1000002], c, ori;

int main() {
    fin >> n;
    fin >> a[1];

    c = a[1];
    ori = 1;
    for(i = 2; i <= n; i++) {
        fin >> a[i];
        if(a[i] == c) ori++;
        else          ori--;

        if(ori == 0) c = a[i], ori = 1;
    }

    ori = 0;
    for(i = 1; i <= n; i++) {
        if(a[i] == c) ori++;
    }

    if(ori > n / 2) fout << c << " " << ori;
    else            fout << "-1";

    return 0;
}