Pagini recente » Cod sursa (job #551929) | Cod sursa (job #1194150) | Cod sursa (job #3328733) | Cod sursa (job #3347827) | Cod sursa (job #3316557)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("elmaj.in");
ofstream fout ("elmaj.out");
int n;
pair<int ,int> elemaj(vector<int> v, int n)
{
int cns=0,current=0;
for(int i=1;i<=n;i++)
{
if(cns==0)
{
current=v[i];
cns++;
}
else
{
if(v[i]==current)
cns++;
else
cns--;
}
}
cns=0;
for(int i=1;i<=n;i++)
if(v[i]==current)
cns++;
if(cns>n/2)
return {current ,cns};
else
return {-1 ,-1} ;
}
int main()
{
fin >> n ;
vector <int> v(n+1 ,0);
for(int i=1;i<=n;i++)
fin >> v[i] ;
auto rez=elemaj(v, n);
if(rez.first==-1)
fout << -1;
else
fout << rez.first << " " << rez.second;
return 0;
}