Pagini recente » Diferente pentru utilizator/stargold2 intre reviziile 275 si 237 | Cod sursa (job #2485983)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
int main()
{
int n,v[1001],ans[1001],mini,poz;
fin>>n;
fin>>v[1];
ans[1]=1;
mini=v[1];
poz=1;
for(int i=2;i<=n;i++)
{
fin>>v[i];
if(v[i]<mini)
{
mini=v[i];
ans[i]=ans[poz];
poz=i;
}
else if(v[i]>mini)
{
ans[i]=ans[poz]+1;
mini=v[i];
poz=i;
}
else
{
ans[i]=ans[poz];
}
}
int k=1,x;
fout<<ans[n]<<"\n";
for(int i=1;i<=n+1;i++)
{
while(ans[i]==k)
{
i++;
}
fout<<v[i-1]<<" ";
k++;
}
fout<<"\n";
return 0;
}