Cod sursa(job #3288999)

Utilizator MihneaCucuMihnea Cucu MihneaCucu Data 25 martie 2025 10:26:09
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.72 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <ctime>
#include <cstdlib>
#include <unordered_map>

using namespace std;

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

    int n;
    fin >> n;
    vector<int> v(n);
    for (int i = 0; i < n; i++) {
        fin >> v[i];
    }

    srand(time(0));
    int trials = 30;
    while (trials--) {
        int candidate = v[rand() % n];
        int count = 0;

        for (int i = 0; i < n; i++) {
            if (v[i] == candidate) {
                count++;
            }
        }

        if (count >= n / 2 + 1) {
            fout << candidate << " " << count << "\n";
            return 0;
        }
    }

    fout << "-1\n";
    return 0;
}