Cod sursa(job #3214922)

Utilizator SerbanCaroleSerban Carole SerbanCarole Data 14 martie 2024 16:08:20
Problema Elementul majoritar Scor 30
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
#include <fstream>
#include <vector>
#include <queue>
using namespace std;
using pii = pair<int,int>;
ifstream cin("elmaj.in");
ofstream cout("elmaj.out");
const int nmax = 1e6 + 1;
int v[nmax] , n;
signed main()
{
    cin >> n;
    int cand = 0 , f = 1;
    for(int i = 1 ; i <= n ; ++i)
    {
        cin >> v[i];
        if(v[i]!=cand)
        {
            f--;
        }
        if(f == 0)
        {
            cand = v[i];
            f = 1;
        }
    }
    f = 0;
    for(int i = 1 ; i <= n ; ++i)
    {
        if(v[i] == cand) ++f;
    }
    if(f >= n/2 + 1) cout << cand << ' ' << f << '\n';
    else cout << -1 << '\n';
    return 0;
}