Pagini recente » Borderou de evaluare (job #95472) | Cod sursa (job #1934857)
#include <iostream>
#include <fstream>
using namespace std;
int elm, apare, n;
int a[1000010];
void read()
{
ifstream f("elmaj.in");
f >> n;
f >> a[0];
elm = a[0];
++apare;
for(int i=1; i<n; ++i)
{
f >> a[i];
if(a[i] == a[i-1])
++apare;
else
{
--apare;
if(!apare)
{
elm = a[i];
apare = 1;
}
}
}
f.close();
}
void out()
{
ofstream g("elmaj.out");
apare = 0;
for(int i=0; i<n; ++i)
if(elm == a[i])
++apare;
if(apare >= n/2 +1)
g << elm << ' ' << apare << '\n';
else
g << '-1' << '\n';
g.close();
}
int main()
{
read();
out();
return 0;
}