#include<cstdio>
int main()
{
int n,kase=0,mm=0,a[100100]={0},b[100100]={0},min=0,maxn=1e+9;
scanf("%d",&n);//注意最大值的范围是有讲究的
for(int i=0;i<n;i++)
scanf("%d",&a[i]);
for(int i=0;i<n;i++)
{
if(a[i]>min) min=a[i];
else b[i]=1;
}
for(int i=n-1;i>=0;i--)
{
if(maxn>a[i]) maxn=a[i];
else b[i]=1;
}
for(int i=0;i<n;i++)
if(!b[i]) kase++;
printf("%d\n",kase);
for(int i=0;i<n;i++)
if(!b[i])
{
if(!mm)
{
mm=1;
printf("%d",a[i]);
}
else
printf(" %d",a[i]);
}
printf("\n");//虽然不知道为什么但是得打,不打格式错误
return 0;
}
pta1045快速排序 这题告诉我们行尾最好加换行不然可能会格式错误。。。。。。。
最新推荐文章于 2023-12-24 15:36:15 发布