UVa 10935 - Throwing cards away I
2015-01-25 12:02
387 查看
链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1876
题目描述:桌上有n(n<=50)张牌,从第一张开始,从上往下依次编号为1~n。当至少还剩下两张牌时进行以下操作:把第一张牌扔掉,然后把新的第一张牌放到整叠牌的最后。输入每行包含一个n,输出每次扔掉的牌以及最后剩下的牌。
题目比较简单,注意输出格式,当n=1时,“Discarded cards:”后没有空格。
代码如下(vs2012运行通过):
题目描述:桌上有n(n<=50)张牌,从第一张开始,从上往下依次编号为1~n。当至少还剩下两张牌时进行以下操作:把第一张牌扔掉,然后把新的第一张牌放到整叠牌的最后。输入每行包含一个n,输出每次扔掉的牌以及最后剩下的牌。
题目比较简单,注意输出格式,当n=1时,“Discarded cards:”后没有空格。
代码如下(vs2012运行通过):
// 10935.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> #include <string> #include <vector> #include <sstream> #include <fstream> using namespace std; #define FILE int _tmain(int argc, _TCHAR* argv[]) { #ifdef FILE ifstream in("data.txt"); ofstream out("output.txt"); cin.rdbuf(in.rdbuf()); cout.rdbuf(out.rdbuf()); #endif int n; while(cin>>n) { if(n==0) break; vector<int> data; for(int i=0;i<n;i++) { data.push_back(i+1); } cout<<"Discarded cards:"; if(data.size()!=1) cout<<" "; while(data.size()>=2) { cout<<data[0]; if(data.size()!=2) cout<<", "; data.erase(data.begin()); data.push_back(data[0]); data.erase(data.begin()); } cout<<'\n'<<"Remaining card: "<<data[0]<<endl; } return 0; }
相关文章推荐
- Throwing cards away I UVA - 10935
- UVA10935 - Throwing cards away I
- Throwing cards away I 卡牌游戏 UVA 10935
- UVa 10935 - Throwing cards away I
- UVa 10935 - Throwing cards away I
- UVa 10935 Throwing cards away 1
- Uva 10935 Throwing cards away I
- UVA_10935: Throwing cards away I
- UVa10935 - Throwing cards away I
- uva 10935 throwing cards away <queue>
- UVA10935 Throwing cards away I【模拟+queue+循环队列】
- UVa 10935 - Throwing cards away I
- UVA 10935 - Throwing cards away I
- UVa---------10935(Throwing cards away I)
- UVA 10935 - Throwing cards away I
- Uva10935——Throwing cards away I
- UVa 10935 Throwing cards away I【队列】
- UVA -10935-卡片游戏-Throwing cards away
- Uva 10935 Throwing cards away I
- Throwing cards away I UVA - 10935