问题 O: 插队问题

内存限制:128 MB 时间限制:1 S 标准输入输出
题目类型:传统 评测方式:文本比较 上传者:
提交:1153 通过:690

题目描述



【问题描述】

n 个人(每个人有一个唯一的编号,用 1~n 之间的整数表示)在一个水龙头前排队准备接水,现在第 n 个人有特殊情况,经过协商,大家允许他插队到第 x 个位置。输出第 n 个人插队后的排队情况。

视频讲解:https://v.youku.com/v_show/id_XNTA3NTc0MzE2OA==.html

【输入格式】

第一行 1 个正整数 n,表示有 n 个人,2<n100。第二行包含 n 个正整数,之间用一个空格隔开,表示排在队伍中的第 1~ n 个人的编号。第三行包含 1 个正整数 x,表示第 n 个人插队的位置,1x<n

【输出格式】一行包含 n 个正整数,表示第 n 个人插队后的排队情况。

输入样例 复制

7
7 2 3 4 5 6 1
3

输出样例 复制

7 2 1 3 4 5 6

数据范围与提示

赋值
a.push_back(100); 
在尾部添加元素  vector<int>a;
元素个数
int size = a.size();
元素个数
是否为空
bool isEmpty = a.empty();
判断是否为空
打印
cout<<a[0]<<endl; 
打印第一个元素
中间插入
a.insert(a.begin()+i, k);
在第i个元素前面插入k
尾部插入
a.push_back(8);
尾部插入值为8的元素
尾部插入
a.insert(a.end(), 10,5);
尾部插入10个值为5的元素
删除尾部
a.pop_back(); 
删除末尾元素
删除区间
a.erase(a.begin()+i, a.begin()+j);
删除区间[i, j-1]的元素
删除元素
a.erase(a.begin()+2);
删除第3个元素
调整大小
a.resize(n)
数组大小变为n
清空
a.clear();                
 
翻转
reverse(a.begin(), a.end());
用函数reverse翻转数组
排序
sort(a.begin(), a.end());
用函数sort排序,从小到大

分类标签