Cod sursa(job #3339417)

Utilizator adinacevalaAdina Cevala adinacevala Data 7 februarie 2026 23:52:43
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.96 kb
#include <bits/stdc++.h>
#define cin fin
#define cout fout
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
const int nmax=1e6+1;
int v[nmax];
int main()
{
    int n,candidat=-1,nr_voturi=0;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>v[i];
        if(nr_voturi==0)///nu avem niciun candidat, deci il luam pe  v[i]
        {
            candidat=v[i];
            nr_voturi=1;
        }
        else if(v[i]==candidat)
        {
            nr_voturi++;
        }
        else
        {
            nr_voturi--;
        }
    }
    int frec=0;
    if(nr_voturi==0)
    {
        cout<<-1;
        return 0;
    }
    else if(nr_voturi>0)
    {
        for(int i=1;i<=n;i++)
        {
            if(v[i]==candidat)
                frec++;
        }
        if(frec>=n/2+1)
        {
            cout<<candidat<<" "<<frec;
        }
        else
        {
            cout<<-1;
        }
    }
}