0
点赞
收藏
分享

微信扫一扫

魔术扑克(递推+STL)

幸甚至哉歌以咏志 2022-01-25 阅读 10
c++算法
#include<iostream>
#include<vector>
using namespace std;
vector<int>a;
int ms(int n) //与原操作相反,从最后一个数往前推,例如n=5,(1)将4拿回来,放在5的上面,(2)将5放到最上面,以此类推。 
{
	if(n==1)return 0;
	a.insert(a.begin(),n-1);
	a.insert(a.begin(),a.back());
	a.pop_back();
//		for(int i=0;i<a.size();i++)
//		cout<<a[i]<<" ";
//		cout<<endl;
	ms(n-1);
}
int main()
{
	int n;
	cin>>n;
	a.push_back(n);
	ms(n);
	for(int i=0;i<a.size();i++)
	cout<<a[i]<<" ";
	cout<<endl;
 } 
 
举报

相关推荐

0 条评论