Cod sursa(job #2921770)

Utilizator alt_contStefan alt_cont Data 1 septembrie 2022 19:32:23
Problema Elementul majoritar Scor 90
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>
#include <iostream>
#include <unordered_map>
#include <algorithm>
using namespace std;
 
 
int main(){
	ifstream fin;
	ofstream fout;
	fin.open("elmaj.in");
	fout.open("elmaj.out"); 
	int n, x;
 	fin >> n;
 	int answer = -1;
 	unordered_map<int, int> data;

	for(int i = 1; i <= n; ++i){
		if(answer == -1){
			fin >> x;
			data[x]++;
			if(data[x] >= n/2 + 1){
				answer = x;
			}
		}
		else{
			fin >> x;
			if(x == answer)
				data[x]++;
		}
	}

	if(answer != -1)
		fout << answer << " " << data[answer];
	else
		fout << -1;
}