#include<cstdio>
#include<vector>
#include<iostream>
#include<algorithm>
using namespace std;
const int maxn=100010;
int origin[maxn],a[maxn];
vector<int> ans;
int main()
{
int n;
cin>>n;
for(int i=0;i<n;i++)
{
scanf("%d",&origin[i]);
a[i]=origin[i];
}
sort(a,a+n);
int max=-1;
for(int i=0;i<n;i++)
{
if(origin[i]>max&&origin[i]==a[i])
ans.push_back(origin[i]);
if(origin[i]>max)
max=origin[i];
}
printf("%d\n",ans.size());
for(int i=0;i<ans.size();i++)
{
printf("%d",ans[i]);
if(i!=ans.size()-1)
printf(" ");
}
printf("\n");
}
A1101 Quick Sort (25) 快速排序 (4.7节内容)
最新推荐文章于 2023-05-26 21:55:15 发布
本文介绍了一段使用C++进行数组与向量操作的代码示例,包括数组的输入、排序及特定条件下的元素筛选。代码展示了如何利用标准库函数如sort()对数组进行排序,以及如何使用vector容器存储并输出符合条件的元素。
215

被折叠的 条评论
为什么被折叠?



