Cod sursa(job #2253369)

Utilizator b10nd3Oana Mancu b10nd3 Data 3 octombrie 2018 21:56:14
Problema Elementul majoritar Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb

// Tabele Dispersie

#include<iostream>
#include<fstream>
#include<map>

using namespace std;

int main(){
	int n, elMaj=0, nr;
	map<int,int> nrApp;
	ifstream in("elmaj.in");
	in>>n;
	long long a[n];
	for(int i=0;i<n; i++){
	   in>>a[i];
	   if(nrApp.find(a[i])==nrApp.end())
	        nrApp.insert(pair<int,int>(a[i],1));
	   else nrApp.find(a[i])->second++; 		  
	}
	in.close();   
    
    ofstream out("elmaj.out");
    map<int,int>::iterator it;
    for(it=nrApp.begin();it!=nrApp.end();it++){
    	if(it->second>n/2) {
    		out<<it->first<<" "<<it->second;
			return 0;
		}
	}
	 
    out<<-1;
	
	out.close();
	return 0;
}