Pagini recente » Cod sursa (job #974976) | Cod sursa (job #2845940) | Cod sursa (job #1175431) | Cod sursa (job #2583984) | Cod sursa (job #543971)
Cod sursa(job #543971)
#include <fstream>
#include <iostream>
using namespace std;
long i,i1,n,pos[100001],nr[100001],v[100001],vmax[100001],aux,k,kmax;
int st[100001];
int main(void)
{
ifstream f("scmax.in");
ofstream g("scmax.out");
f>>n;
for (i=1;i<=n;i++)
{
f>>nr[i];
pos[i]=i;
st[i]=0;
}
for (i=1;i<n;i++)
for (i1=i;i1<=n;i1++)
if (nr[i]>nr[i1])
{
aux=nr[i];
nr[i]=nr[i1];
nr[i1]=aux;
aux=pos[i];
pos[i]=pos[i1];
pos[i1]=aux;
}
kmax=0;
for (i=1;i<=n;i++)
if (st[i]==0)
{st[i]=1;
k=1;
v[k]=nr[i];
for (i1=i;i1<=n;i1++)
if ((pos[i1]>pos[i])&&(nr[i1]!=nr[i1-1]))
{
st[i1]=1;
k++;
v[k]=nr[i1];
}
if (k>kmax)
{
for (i1=1;i1<=k;i1++)
vmax[i1]=v[i1];
kmax=k;
}
}
g<<kmax;
g<<endl;
for (i=1;i<=kmax;i++)
g<<vmax[i]<<' ';
f.close();
g.close();
return 0;}