Throwing cards away I UVA - 10935】的更多相关文章

  Given is an ordered deck of n cards numbered 1 to n with card 1 at the top and card n at the bottom. The following operation is performed as long as there are at least two cards in the deck:   Throw away the top card and move the card that is now o…
原题 Throwing cards away I   Given is an ordered deck of n cards numbered 1 to n with card 1 at the top and card n at the bottom. The following operation is performed as long as there are at least two cards in the deck:   Throw away the top card and mo…
Throwing cards away I   Given is an ordered deck of n cards numbered 1 to n with card 1 at the top and card n at the bottom. The following operation is performed as long as there are at least two cards in the deck:  Throw away the top card and move t…
题目: Problem B: Throwing cards away I Given is an ordered deck of n cards numbered 1 to n with card 1 at the top and card n at the bottom. The following operation is performed as long as there are at least two cards in the deck: Throw away the top car…
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 代码:(Accepted,0 ms) //UVa10935 - Throwing cards away I #include<iostream> #include<queue> int N; int main() { //freopen("in.txt", "r", stdin); while (scanf("%d", &N) !=…
 Throwing cards away I Given is an ordered deck of  n  cards numbered 1 to n  with card 1 at the top and card  n  at the bottom. The following operation is performed as long as there are at least two cards in the deck: Throw away the top card and m…
D - Throwing cards away I Given is an ordered deck of n cards numbered 1 to n with card 1 at the top and card n at the bottom. The following operation is performed as long as there are at least two cards in the deck:   Throw away the top card and mov…
UVA10940 - Throwing cards away II(找规律) 题目链接 题目大意:桌上有n张牌,依照1-n的顺序从上到下,每次进行将第一张牌丢掉,然后把第二张放到这叠牌的最后.重复进行这种操作.直到仅仅剩下一张牌. 解题思路:仅仅能先暴力.将前面小点的n打印出来.看看有什么规律. 规律:f[2^k + mod] = 2*mod;(mod > 0); n = 1须要特判. 代码: #include <cstdio> #include <cstring> cons…
题目意思:有N张牌,标号为1~N,且牌以叠好,从上到小就是标号1-N的牌,只要牌堆数量大于等于2的时候,就采取如下操作:将最上面的牌扔掉(即离开牌堆).刚才那张牌离开后,再将新的最上面的牌放置于牌堆最后一张. 要求输出:依次输出被扔掉的牌,按扔掉的顺序输出.最后要输出最后留下的一张牌. 思路:用一个队列来模拟,被扔掉的牌相当于取出后进行pop操作,把最上面的牌放置最后相同于取出后进行pop操作和push操作,直至队列的size小于等于1 注意点:因为题目对格式的要求,所以第一张被扔掉的牌格式处理…
直接用STL里的queue模拟即可. #include <cstdio> #include <queue> using namespace std; ; int discarded[maxn], cnt; int main() { int n; && n) { cnt = ; queue<int> Q; ; i <= n; i++) Q.push(i); ) { discarded[cnt++] = Q.front(); Q.pop(); int…