Cod sursa(job #3361271)

Utilizator RaresPoinaruPoinaru-Rares-Aurel RaresPoinaru Data 22 iulie 2026 15:54:18
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("elmaj.in");
ofstream fout ("elmaj.out");
#define cin fin
#define cout fout

const int MAXN=1e6+10;

int n,a[MAXN];

int main()
{
    cin >>n;
    for (int i=1;i<=n;++i){
        cin >>a[i];
    }
    int m=a[1],cnt=1;
    for (int i=2;i<=n;++i){
        if (a[i]==m) cnt++;
        else cnt--;

        if (cnt<0){
            m=a[i];
            cnt=1;
        }
    }

    cnt=0;
    for (int i=1;i<=n;++i){
        if (a[i]==m) cnt++;
    }

    if (cnt>n/2){
        cout <<m<<' '<<cnt;
    }
    else{
        cout <<-1;
    }
    return 0;
}
/**
O(n)
**/