正當夏季要過去的時候,幻想鄉又再一次發生異變
本來在這一晚裏會出滿月,但是月亮似乎因為某些事故而消失了
這情況對人類來說沒有甚麼大問題,但對妖怪來說則是攸關生死的事情
而在幻想鄉棲息的妖怪-八雲紫察覺到這次異變的發生,因為自己一個人不方便行動
所以就邀請了博麗神社的巫女-博麗靈夢一同出發解決異變
但靈夢正為了神社日益短少的香油錢煩惱,並沒有很想去的意願
於是八雲紫就想出以猜拳的方式來決定去留與否
假如紫贏的話,就理所當然一起出發
如果是靈夢贏的話,紫就要留下來一起籌措香油錢
範例測資
範例輸入 | 範例輸出 |
---|---|
EOF 輸入,每筆輸入中有兩筆資料,前者為八雲紫出的拳,後者為靈夢的,中間以空白間隔 由於兩人都對需要不斷的出拳感到疲倦與厭煩 所以靈夢就拿出三支籤 分別寫上(Scissors,Stone,Paper)來代表(剪刀,石頭,布) 由兩人各抽一支來決定輸贏 因為都各只有一支籤,所以不用考慮平手的問題 除了對每筆測資輸出贏家之外 還需計算誰贏的勝場數最多 輸入的最後為「Game Over」 這時輸出結局 | 靈夢贏的話就輸出「靈夢獲勝」 反之則輸出「紫獲勝」 在比較完勝場數之後輸出結局 假如靈夢贏的場數較多 則在最後輸出「悲慘的籌措起香油錢」 反之則輸出「螢火的蹤跡」 |
Scissors Stone Paper Stone Paper Stone Scissors Paper Game Over | 靈夢獲勝 紫獲勝 紫獲勝 紫獲勝 螢火的蹤跡 |
解題思路
將某一個人的勝利條件設為 if,else 就會是另外一個人勝利。
範例程式碼-ZeroJudge D155: 序章-永夜抄-A
#include <iostream>
using namespace std;
int main() {
string purple, dream;
int P = 0, D = 0;
while (cin >> purple >> dream && purple != "Game")
{
if ((purple == "Scissors" && dream == "Stone") || (purple == "Stone" && dream == "Paper") || (purple == "Paper" && dream == "Scissors"))
{
D++;
cout << "靈夢獲勝\n";
}
else
{
P++;
cout << "紫獲勝\n";
}
}
if (P > D) cout << "螢火的蹤跡\n";
else cout << "悲慘的籌措起香油錢\n";
}
//ZeroJudge D155
//Dr. SeanXD