Cod sursa(job #3279924)

Utilizator LucaMirsolea14Luca Mirsolea LucaMirsolea14 Data 24 februarie 2025 20:14:26
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb
#include<fstream>
#define int long long
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int32_t main(){

int n,v[1000002],i,j;

fin>>n;

for(i=1;i<=n;i++)
    fin>>v[i];

int votanti_necuplati=0,candidat=-1;

for(i=1;i<=n;i++){

    if(votanti_necuplati==0){
        votanti_necuplati=1;
        candidat=v[i];
    }
    else{
        if(v[i]==candidat)
            votanti_necuplati++;
        else
            votanti_necuplati--;
    }

}

/// a ramas in picioare doar candidat, verificam daca este majoritar

int nr=0;
for(i=1;i<=n;i++)
    if(v[i]==candidat)
        nr++;

if(nr>n/2)
    fout<<candidat<<" "<<nr;
else
    fout<<-1;

}