Cod sursa(job #2233496)
Utilizator | Data | 23 august 2018 14:57:20 | |
---|---|---|---|
Problema | Elementul majoritar | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.53 kb |
#include <fstream>
#include <iostream>
#include <map>
using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int main()
{
map<int,int> mp;
int N;
f>>N;
for(;N;N--)
{
int num; f>>num;
mp[num] = mp.count(num)>0 ? mp[num]+1: 0;
}
int key, value=-1;
for(map<int,int>::iterator i=mp.begin(); i!=mp.end();++i){
if(i->second>N/2+1)
if(i->second>value)
key=i->first, value=i->second;
}
g<<key<<" "<<value;
return 0;
}