Cod sursa(job #3205268)

Utilizator PetruApostolApostol Mihnea Petru PetruApostol Data 19 februarie 2024 09:57:58
Problema Elementul majoritar Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>
using namespace std;

ifstream cin("elmaj.in");
ofstream cout("elmaj.out");

int v[100001];

int main()
{
    int n,i,curent,k;
    cin>>n;
    for(i=0;i<n;i++){
        cin>>v[i];
    }
    curent=-1;k=0;
    for(i=0;i<n;i++){
        if(k==0){
            curent=v[i];
            k=1;
        }else if(v[i]==curent){
            k++;
        }else{
            k--;
        }
    }
    int cnt=0;
    for(i=0;i<n;i++){
        if(v[i]==curent) cnt++;
    }
    if(cnt>n/2) cout<<curent<<" "<<cnt;
    else cout<<"-1\n";
    return 0;
}