您的位置:首页 > 其它

UVA 10935 - Throwing cards away I

2013-07-15 21:43 357 查看
UVA 能上去啦,哈哈。

WA了一次。。。这个坑爹的输入1的时候应该输出

Discarded cards:

Remaining card: 1



用C++自带的模版类方便多了。。。。

#include<iostream>
#include<queue>
using namespace std;
queue<int> q;
int main() 
{
	int n,i;
	while( cin>>n,n)
	{
		if(n==1)
		{
			cout<<"Discarded cards:\nRemaining card: 1\n";
			continue;
		}
		for(i=0;i<n;i++)
			q.push(i+1);
		int ans[51],count=0;
		while(!q.empty())
		{
			ans[count++]=q.front();
			q.pop();
			if(q.empty()) break;
			q.push(q.front());
			q.pop();
		}
		cout<<"Discarded cards: ";
		for(i=0;i<count-2;i++)		
			cout<<ans[i]<<", ";
		cout<<ans[i++]<<endl;
		cout<<"Remaining card: "<<ans[i]<<endl;
	}
	return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: