队列解法,求大佬调题
查看原帖
队列解法,求大佬调题
772945
Polarie楼主2023/5/21 13:52
#include<bits/stdc++.h>
#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
#include<cstring>
#include<string>
#include<sstream>
#include<vector>
#include<queue>
#include<deque>
using namespace std;
int main (){
	int n;
	while(cin>>n&&n!=0){
		deque<int> q;
		for(int i=1;i<=n;i++){
			q.push_back(i);
		}
		cout<<"Discarded cards:";
		int f=0;
		while(q.size()>=2){
			if(f==0){
				cout<<q.front();
				f=1;
			}
			else{
				cout<<", "<<q.front();
			}
			q.pop_front();
			q.push_back(q.front());
			q.pop_front();
		}
		cout<<endl<<"Remaining card: "<<q.front()<<endl;
	}
 	return 0;
}

2023/5/21 13:52
加载中...