Cod sursa(job #3224126)

Utilizator InformaticianInDevenire1Munteanu Mihnea Gabriel InformaticianInDevenire1 Data 14 aprilie 2024 19:34:02
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.62 kb
#include <bits/stdc++.h>

using namespace std;

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

int v[1000005];

int main()
{
    int n,elc,fr = 1;
    fin >> n;
    for (int i=1;i<=n;++i){
        fin >> v[i];
    }
    elc = v[1];
    for (int i=2;i<=n;++i){
        if (v[i]==elc){
            fr++;
        }else{
            fr--;
        }
        if (fr==0){
            elc = v[i];
            fr = 1;
        }
    }
    fr = 0;
    for (int i=1;i<=n;++i){
        if (v[i]==elc) fr++;
    }
    if (fr>=n/2+1){
        fout << elc << ' ' << fr;
    }else fout << -1;
    return 0;
}