Pagini recente » Cod sursa (job #759867) | Cod sursa (job #374079) | Cod sursa (job #548421) | Cod sursa (job #330325) | Cod sursa (job #715280)
Cod sursa(job #715280)
#include <fstream>
#include <set>
using namespace std;
struct TComp
{
bool operator()(pair<long,long> *P1,pair<long,long> *P2)
{
return P1->first < P2->first;
}
};
int main(void)
{
fstream fin("elmaj.in",ios::in);
fstream fout("elmaj.out",ios::out);
long N,A,i;
fin >> N;
set<pair<long,long> *,TComp> S;
for (i = 0;i < N;i += 1)
{
fin >> A;
pair<long,long> P(A,1);
set<pair<long,long> *,TComp>::iterator it = S.find(&P);
if (it == S.end())
{
S.insert(new pair<long,long>(A,1));
}
else
{
(*it)->second += 1;
}
}
set<pair<long,long> *,TComp>::iterator it = S.begin();
pair<long,long> *best = (*it);
it++;
while (it != S.end())
{
if ((*it)->second > best->second)
{
best = (*it);
}
it++;
}
if (best->second > (N / 2))
{
fout << best->first << " " << best->second;
}
else
{
fout << "-1";
}
fin.close();
fout.close();
return 0;
}