2844: 练52.3 插队
内存限制:64 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:6
解决:5
题目描述
有$n$个人,每个人都有自己的编号,他们排成一个队列。现在一个编号为$b$的人要插到第$a$人(不是编号为$a$)后面,求插入后的队列顺序。
输入
第一行输入$n$,第二行输入$n$个数,表示原先的队伍顺序。($n\le 200$)
第三行输入两个数$a$,$b$。
第三行输入两个数$a$,$b$。
输出
输出一行,为插入后的队列顺序。
样例输入 复制
5
1 2 3 4 5
2 7
样例输出 复制
1 2 7 3 4 5
提示
#include<bits/stdc++.h>
using namespace std;
int n,a[205],x,y;
int main(){
cin>>n;
for(int i=1;i<=n;i++) cin>>a[i];
cin>>x>>y;
for(int i=1;i<=x;i++) cout<<a[i]<<" ";
cout<<y<<" ";
for(int i=x+1;i<=n;i++)cout<<a[i]<<" ";
return 0;
}
#include<bits/stdc++.h>
using namespace std;
int n,a,b,x;
vector<int> v;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>x;
v.push_back(x);
}
cin>>a>>b;
v.insert(v.begin()+a,b);
for(vector<int>::iterator it=v.begin();it!=v.end();++it){
cout<<*it<<" ";
}
return 0;
}