军训
来源:互联网 发布:剑三淘宝金币怎么买 编辑:程序博客网 时间:2024/04/28 09:55
实验任务
小 M 在大一军训时,遇到了一个奇怪的教官。这个教官提出了一个奇怪的要求。他让小M 班的同学们排成一队,然后他开始喊左边第 X 个或者右边第 X 个同学出列,按出列顺序排成新的一队。请根据原来的编号输出新的序列。
数据输入
输入第一行包括一个正整数 N(N<=10000),表示队伍人数。接下来 N 行,每行包括一个字母和一个 int 型整数 ai,字母 L 表示左边数起,字母 R 表示右边数起,数字 ai 表示第ai 个同学出列。 (0
数据输出
输出 N 个数字表示新队伍的同学对应的原编号的序列。
输入示例
5
L 3
R 3
L 3
L 2
R 1
输出示例
3 2 5 4 1
解题思路
见注释
参考代码
#include <iostream> #include <cstdio> #include <vector> using namespace std; int main() { int n,i; while (~scanf("%d",&n)){ vector<int> v,que; for (i = 1;i <= n;i++) //v中存 1,2,...,n v.push_back(i); char opr; int num; for (i = 1;i <= n;i++){ scanf(" %c%d",&opr,&num); if (opr == 'L'){ que.push_back(v[num-1]); //左边第num个加到新队列 v.erase(v.begin()+num-1); //删除v中对应的元素 }else if (opr == 'R'){ que.push_back(v[v.size()-num]); v.erase(v.end()-num); } } for (i = 0;i < n;i++) printf("%d ",que[i]); printf("\n"); } }
0 0
- 军训
- 军训
- 军训
- 军训
- 军训
- 军训中。。。。。
- 结束军训
- 军训感受
- 军训真苦啊!
- 3.军训
- 军训 (水题)
- 【JZOJ3463】军训
- 军训感悟
- 军训日记
- 军训日记
- 2381 军训
- 军训队列
- 军训问题
- 第二类Stirling数
- hdu 1532 Drainage Ditches 网络最大流模板 EK + Dinic两种算法AC
- imap协议
- 链队列通用链表实现
- 别人技术面试总结(一)
- 军训
- 【Java】string split 分割误区
- LeetCode - String to Integer (atoi)
- 黑马程序员——OC语言基础篇---内存管理
- leetcode之String to Integer (atoi)
- map,reduce用法举例
- 使用Intent传递数据之返回结果
- eclipse代码提示
- 7-1通信系统中为什么要进行编码和译码?常见的编码方法有哪些?