有多少小伙伴还记得石头剪刀布呢,全是回忆啊……
看到一道题让我想起了童年
我们来看下题目描述:
来自PTA官网
题解思路:
- 采用模拟的算法来解决
模拟,稳赢策略:
输入-> 锤子 输出-> 布
输入-> 布 输出-> 剪刀
输入-> 剪刀 输出-> 锤子
平局策略:
对方 出 什么 自己就出什么
对于每K局一次平局 ,用个计数器就可以轻松解决
#include<bits/stdc++.h> 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; }