Cod sursa(job #3349523)

Utilizator flaviusstefflavius stefan flaviusstef Data 31 martie 2026 10:31:07
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.79 kb
#include <fstream>
#include <vector>
using namespace std;
int main() {
    ifstream f_in("elmaj.in");
    ofstream f_out("elmaj.out");
    int n;
    if(f_in>>n) {
        vector<int> v(n);
        for(int i=0; i<n; i++) {
            f_in>>v[i];
        }
        int k=20;
        bool gasit=false;
        for(int i=0; i<k; i++) {
            int index=rand()%n;
            int candidat=v[index];
            int aparitii=0;
            for(int j=0; j<n; j++) {
                if(v[j]==candidat) {
                    aparitii++;
                }
            }
            if(aparitii>n/2) {
                f_out<<candidat<<" "<<aparitii<<"\n";
                gasit=true;
                break;
            }
        }
        if(!gasit) {
            f_out<<"-1\n";
        }
    }
    return 0;
}