Pagini recente » Cod sursa (job #875631) | Cod sursa (job #902760) | Cod sursa (job #521018) | Cod sursa (job #867235) | Cod sursa (job #2460890)
#include <fstream>
#include <map>
#include <iterator>
using namespace std;
ifstream fin("elmaj.in");
ofstream gout("elmaj.out");
int main()
{
int N, val, maj = -1, nrAp = 0, find = 0;
map<int, int> intMap;
fin >> N;
for (int i = 0; i < N; i++)
{
fin >> val;
if (intMap.count(val))
{
auto itr = intMap.find(val);
itr->second++;
if (itr->second >= (N / 2) + 1)
{
nrAp = itr->second;
maj = itr->first;
find = 1;
}
}
else
intMap.insert(pair<int, int>(val, 1));
}
/*if (!find)
{
for (auto itr = intMap.begin(); itr != intMap.end(); itr++)
{
if (itr->second >= (N / 2) + 1)
{
nrAp = itr->second;
maj = itr->first;
}
}
}*/
if (maj != -1)
gout << maj << " " << nrAp;
else
gout << -1;
return 0;
}