石头剪刀布 L1-044 稳赢 15分

有多少小伙伴还记得石头剪刀布呢,全是回忆啊……
看到一道题让我想起了童年
我们来看下题目描述:
来自PTA官网石头剪刀布 L1-044 稳赢 15分_第1张图片
题解思路:

  1. 采用模拟的算法来解决

模拟,稳赢策略:
输入-> 锤子 输出-> 布
输入-> 布 输出-> 剪刀
输入-> 剪刀 输出-> 锤子
平局策略:
对方 出 什么 自己就出什么

对于每K局一次平局 ,用个计数器就可以轻松解决

#include
using namespace std;
int main() {
     
	int n;	cin >> n;
	string s,s1 = "ChuiZi", s2 = "JianDao", s3 = "Bu";
	int ct = 0;//计数器
	while (true) {
     
		cin >> s;
		if (s == "End") break;//输入End 就结束输入 跳出循环
		ct++;
		if (ct != n+1) {
     //没达到 K次 就稳赢策略
			if (s == s1) cout << s3 << endl;
			else 
				if (s == s2) cout << s1 << endl;
				else cout << s2 << endl;
		}
		else {
     //达到 K次 就采用平局策略
			cout << s << endl;
			ct = 0;
		}
	}
	return 0;
}

谢谢阅读,由于作者水平有限,难免有错误之处,若读者发现错误,还请批评,在留言区留言,我一定会尽快修改的,谢谢。

你可能感兴趣的:(PTA,算法)