Pagini recente » Cod sursa (job #1167546) | Borderou de evaluare (job #1791450) | Monitorul de evaluare | Borderou de evaluare (job #1791437) | Cod sursa (job #1167563)
#include <fstream>
using namespace std;
const int NMax = 1000010;
int n;
int a[NMax];
void Read()
{
ifstream f ("elmaj.in");
f >> n;
for (int i = 1; i <= n; ++ i)
f >> a[i];
f.close();
}
void Solve()
{
int candy = a[1], count = 1;
for (int i = 2; i <= n; ++ i)
{
if (a[i] == candy)
++count;
else
--count;
if (count == 0)
{
candy = a[i];
count = 1;
}
}
count = 0;
for (int i = 1; i<=n; ++ i)
if (candy == a[i])
++count;
int lim = n / 2 + 1;
if (count >= lim)
{
ofstream g("elmaj.out");
g << candy << " " << count << "\n";
g.close();
}
else
{
ofstream g("elmaj.out");
g << "-1\n";
g.close();
}
}
int main()
{
Read();
Solve();
return 0;
}