【題解】【PTA團體程式設計天梯賽】
L1-044 穩贏 (15 分) Go語言|Golang
大家應該都會玩“錘子剪刀布”的游戲:兩人同時給出手勢,勝負規則如圖所示:

現要求你撰寫一個穩贏不輸的程式,根據對方的出招,給出對應的贏招,但是!為了不讓對方輸得太慘,你需要每隔K次就讓一個平局,
輸入格式:
輸入首先在第一行給出正整數K(≤10),即平局間隔的次數,隨后每行給出對方的一次出招:ChuiZi代表“錘子”、JianDao代表“剪刀”、Bu代表“布”,End代表輸入結束,這一行不要作為出招處理,
輸出格式:
對每一個輸入的出招,按要求輸出穩贏或平局的招式,每招占一行,
輸入樣例1:
2
ChuiZi
JianDao
Bu
JianDao
Bu
ChuiZi
ChuiZi
End
結尾無空行
輸出樣例1:
Bu
ChuiZi
Bu
ChuiZi
JianDao
ChuiZi
Bu
結尾無空行
思路:
只需要用一個串列去存好這個對應的答案就好,然后再進行輸出
代碼如下:
package main
import (
"fmt"
)
func main() {
var num int
_,_=fmt.Scan(&num)
count := 0
var resultList []string
for {
var str string
_,_=fmt.Scan(&str)
if str == "End" { // 如果是End就直接退出了
break
}
if count==2 { // 如果count==2就說明這個是個平局,直接填入一個即可
count=-1
resultList = append(resultList, str)
}else{
if str=="ChuiZi" {
resultList = append(resultList, "Bu")
}else if str=="JianDao"{
resultList = append(resultList, "ChuiZi")
}else if str=="Bu"{
resultList = append(resultList, "JianDao")
}
}
count++
}
for i:=0;i<len(resultList);i++ {
if i == 0 {
fmt.Printf("%s",resultList[i])
}else{
fmt.Printf("\n%s",resultList[i])
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/301372.html
標籤:其他
上一篇:LeetCode-100題(Hot) 45. 跳躍游戲 II [Java實作] [極速]
下一篇:OpenCV進階--影像顏色空間
