Uva 10935 Throwing cards away I
2016-04-14 21:04
447 查看
Throwing cards away I
Description
Given is an ordered deck of n cards numbered 1to n with card 1 at the top and card n at thebottom. The following operation is performed aslong as there are at least two cards in the deck:Throw away
the top card and movethe card that is now on the top of thedeck to the bottom of the deck.Your task is to find the sequence of discardedcards and the last, remaining card.
Input
Each line of input (except the last) contains anumber n ≤ 50. The last line contains ‘0’ andthis line should not be processed.
Output
For each number from the input produce twolines of output. The first line presents the sequenceof discarded cards, the second line reportsthe last remaining card. No line will haveleading or trailing
spaces. See the sample for theexpected format.
Sample Input
7
1
9
10
6
0
Sample Output
Discarded cards: 1, 3, 5, 7, 4, 2
Remaining card: 6
Discarded cards: 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 4, 8, 12, 16, 2, 10, 18, 14
Remaining card: 6
Discarded cards: 1, 3, 5, 7, 9, 2, 6, 10, 8
Remaining card: 4
Discarded cards: 1, 3, 5, 2, 6
Remaining card: 4
比较简单的队列模拟题;
直接模拟即可;
Time Limit: 3000MS | Memory Limit: Unknown | 64bit IO Format: %lld & %llu |
Given is an ordered deck of n cards numbered 1to n with card 1 at the top and card n at thebottom. The following operation is performed aslong as there are at least two cards in the deck:Throw away
the top card and movethe card that is now on the top of thedeck to the bottom of the deck.Your task is to find the sequence of discardedcards and the last, remaining card.
Input
Each line of input (except the last) contains anumber n ≤ 50. The last line contains ‘0’ andthis line should not be processed.
Output
For each number from the input produce twolines of output. The first line presents the sequenceof discarded cards, the second line reportsthe last remaining card. No line will haveleading or trailing
spaces. See the sample for theexpected format.
Sample Input
7
1
9
10
6
0
Sample Output
Discarded cards: 1, 3, 5, 7, 4, 2
Remaining card: 6
Discarded cards: 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 4, 8, 12, 16, 2, 10, 18, 14
Remaining card: 6
Discarded cards: 1, 3, 5, 7, 9, 2, 6, 10, 8
Remaining card: 4
Discarded cards: 1, 3, 5, 2, 6
Remaining card: 4
比较简单的队列模拟题;
直接模拟即可;
#include<iostream> #include<cstdio> #include<cstring> #include<string> #include<queue> using namespace std; queue<int> q; int main() { int n; int temp; while(scanf("%d",&n)!=EOF&&n) { if(n==1) { printf("Discarded cards:\n"); printf("Remaining card: 1\n"); continue; } for(int i=1;i<=n;++i) { q.push(i); } printf("Discarded cards: "); while(q.size()>2) { temp=q.front(); q.pop(); printf("%d, ",temp); temp=q.front(); q.pop(); q.push(temp); } temp=q.front(); q.pop(); printf("%d\n",temp); temp=q.front(); q.pop(); printf("Remaining card: %d\n",temp); } return 0; }
相关文章推荐
- Java IO2:字节流
- 复利计算再升级-----------------------------------------------------------
- iOS拍照之后图片自动旋转90度解决办法
- Android接入微信支付完全解析,太全了~
- xgboost 调参经验
- HDU 3790.最短路径问题【最短路径Dijkstra算法】【4月14】
- poj_3169_Layout 差分约束
- 基于Linux和Windows管理的samba
- 对WheelPicker的分析
- Java集合类: Set、List、Map、Queue使用场景梳理
- bzoj 1257:余数之和sum
- apk获取设备文件节点操作权限
- springside4项目源码研读(2)
- hdu1203 I NEED A OFFER! 01背包
- 安装配置Hadoop2.6.0(完全分布式)
- C 语言之 const、static小结
- UI 界面设计 滚动视图
- 0414复利计算结对再升级
- java版复利计算器升级
- 大法师广泛的