Cod sursa(job #1755173)

Utilizator bogdanluncasubogdan bogdanluncasu Data 9 septembrie 2016 15:24:26
Problema Elementul majoritar Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
#include<iostream>
#include<map>
using namespace std;
map<int,int> a;
int n,maxv,x;
int main(){
	freopen("elmaj.in", "r", stdin);
	freopen("elmaj.out", "w", stdout);
    scanf("%d",&n);
    for(int i=1;i<=n;i++){
    	scanf("%d",&x);
		if(a[maxv]<n/2){
			a[x]++;
			if(a[x]>a[maxv]){maxv=x;}
		}else if(x==maxv){
			a[x]++;
		}
    }
	if(a[maxv]>n/2)
		printf("%d %d",maxv,a[maxv]);
	else printf("-1");
}