Cod sursa(job #2208130)

Utilizator andrei.raduta1101Raduta Andrei andrei.raduta1101 Data 28 mai 2018 13:22:58
Problema Elementul majoritar Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.82 kb
#include <climits>
#include <fstream>
#include <map>

int main(void) {
    int counter, result = -1, result_occ = INT_MIN;
    std::map<int, int> occ_map;

    std::ifstream file_in("elmaj.in");
    file_in >> counter;

    for (int index = 1, temp; index <= counter; index++) {
        file_in >> temp;

        if (occ_map.find(temp) == occ_map.end()) {
            occ_map.emplace(temp, 1);
        } else {
            occ_map.at(temp) += 1;
        }

        if (result_occ < occ_map.at(temp)) {
            result_occ = occ_map.at(temp);
            result     = temp;
        }
    }

    std::ofstream file_out("elmaj.out");
    if (result == -1) {
        file_out << result << std::endl;
    } else {
        file_out << result << " " << result_occ << std::endl;
    }

    file_in.close();
    file_out.close();
    return 0;
}