L1-044 稳赢 (暴力法)
生活随笔
收集整理的這篇文章主要介紹了
L1-044 稳赢 (暴力法)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
L1-044 穩贏 (15 分)
大家應該都會玩“錘子剪刀布”的游戲:兩人同時給出手勢,勝負規則如圖所示:
現要求你編寫一個穩贏不輸的程序,根據對方的出招,給出對應的贏招。但是!為了不讓對方輸得太慘,你需要每隔K次就讓一個平局。
輸入格式:
輸入首先在第一行給出正整數K(≤10),即平局間隔的次數。隨后每行給出對方的一次出招:ChuiZi代表“錘子”、JianDao代表“剪刀”、Bu代表“布”。End代表輸入結束,這一行不要作為出招處理。
輸出格式:
對每一個輸入的出招,按要求輸出穩贏或平局的招式。每招占一行。
輸入樣例:
2
ChuiZi
JianDao
Bu
JianDao
Bu
ChuiZi
ChuiZi
End
輸出樣例:
Bu
ChuiZi
Bu
ChuiZi
JianDao
ChuiZi
Bu
思路:分四種情況討論,flag作為控制器來保證隔兩局放平然后重新賦值為K,保證次數正確。再然后大前提輸入End直接中斷輸入輸出。?
?
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(void){ll n;
cin>>n;
int flag=n;
int i=0;
string name;
cin.ignore();while(cin>>name)
{
if(name == "End") return 0;if(name=="ChuiZi"&&flag>0)
{
cout<<"Bu"<<endl;
flag--; }else if(name=="JianDao"&&flag>0)
{
cout<<"ChuiZi"<<endl;
flag--;}
else if(name=="Bu"&&flag>0)
{
cout<<"JianDao"<<endl;
flag--;}
else if(flag==0) {
cout<<name<<endl;
flag=n;
}}return 0;
}
總結
以上是生活随笔為你收集整理的L1-044 稳赢 (暴力法)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 箍牙多少钱啊?
- 下一篇: L1-047 装睡 (结构体解决)