Pagini recente » Cod sursa (job #2576223) | Cod sursa (job #214557) | Cod sursa (job #195709) | Cod sursa (job #996337) | Cod sursa (job #1047834)
#include <fstream>
#include <iostream>
using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int x[1000001];
int poz(int p,int u)
{ int piv,aux,k;
piv=x[p];
while(p<u)
{if(x[p]>x[u])
{aux=x[p]; x[p]=x[u]; x[u]=aux;}
if(x[p]==piv)
u--;
else
p++;}
k=p;
return k;}
void quick (int p,int u)
{int k;
if(p<u)
{k=poz(p,u);
quick(p,k-1);
quick(k+1,u);
}
}
int main ()
{int i,k,maxc,maxim,n;
f>>n;
for(i=1;i<=n;i++)
f>>x[i];
quick(1,n);
maxim=1;
for (i=1;i<n;i++)
{maxc=1;
while(x[i]==x[i+1])
{
maxc++;
i++;}
if(maxc>maxim)
{maxim=maxc;
k=i;}
}
if(maxim>n/2)
g<<x[k]<<" "<<maxim;
else
g<<-1;
f.close();
g.close();
return 0;}