Cod sursa(job #3195549)

Utilizator bg16-2009bg16 bg16 bg16-2009 Data 21 ianuarie 2024 11:17:52
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream fin("elmaj.in");
ofstream fout("elmaj.out");

int arr[1000001];

int main(){
    int n;
    fin>>n;
    for(int i=1;i<=n;i++){
        fin>>arr[i];
    }
    int el_majoritar=arr[1], scor=1;
    for(int i=2;i<=n;i++){
        if(scor==0){
            el_majoritar=arr[i];
        }
        if(arr[i]!=el_majoritar){
            scor--;
        }else{
            scor++;
        }
    }
    int nr_aparitii=0;
    for(int i=1;i<=n;i++){
        if(arr[i]==el_majoritar){
            nr_aparitii++;
        }
    }
    if(nr_aparitii>n/2){
        fout<<el_majoritar<<" "<<nr_aparitii;
    }
    return 0;
}