Discuz! Board

 找回密码
 立即注册
查看: 192|回复: 0

2025 2.7 画蛇添足

[复制链接]

7

主题

7

帖子

60

积分

注册会员

Rank: 2

积分
60
发表于 2025-2-7 16:32:38 | 显示全部楼层 |阅读模式
[C++] 纯文本查看 复制代码
#include<bits/stdc++.h>         
using namespace std;
int main()
{
	string a[3]={"勺子","杯子","筷子"};
	srand(time(0));//种子 
	int b[3]={0,1,2};
	
	for (int j=0;j<10;j++)
	{
		random_shuffle(b,b+3);//打乱次序 
		cout<<"初始状态是:"; 
		for (int i=0;i<=2;i++)
		{
			cout<<a[b[i]]<<" ";
		}
		
		int g=find(b,b+3,2)-b;
		if(g>=1)
		{
			swap(b[g-1],b[g]);
		}
		cout<<endl<<"第一次交换:";
		for (int i=0;i<=2;i++)
		{
		cout<<a[b[i]]<<" ";
		}	
	
    	g=find(b,b+3,1)-b;
		if(g<=1)
		{
			swap(b[g+1],b[g]);
		}
		cout<<endl<<"第二次交换:";
		for (int i=0;i<=2;i++)
		{
			cout<<a[b[i]]<<" ";
		}
		
    	g=find(b,b+3,0)-b;
		if(g>=1)
		{
			swap(b[g-1],b[g]);//交换 
		}
		cout<<endl<<"第三次交换:";
		for (int i=0;i<=2;i++)
		{
			cout<<a[b[i]]<<" ";
		}
		cout<<endl<<endl;	
	}
	
    return 0;
}

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|DiscuzX

GMT+8, 2025-5-29 05:42 , Processed in 0.055685 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.. 技术支持 by 巅峰设计

快速回复 返回顶部 返回列表