Cod sursa(job #3316360)

Utilizator alexmbBolos Alexandru Matei alexmb Data 18 octombrie 2025 15:43:24
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.73 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
vector<int> v;
int element_major(vector<int> v,int n,int &c,int &cand)
{
    int i,ver=0;
    for(i=0;i<v.size();i++)
    {
        if(c==0)
        {
            cand=v[i];
            c=1;
        }
        else if(cand==v[i]) c++;
        else c--;
    }
    for(i=0;i<v.size();i++)
    {
        if(cand==v[i]) ver++;
    }
    if(ver<=n/2) return -1;
    c=ver;
    return 1;
}

int main()
{
    int n,i,x,c=0,cand=0;
    fin>>n;
    for(i=1;i<=n;i++)
    {
        fin>>x;
        v.push_back(x);
    }
    if(element_major(v,n,c,cand)==-1) fout<<-1;
    else fout<<cand<<" "<<c;

    return 0;
}