ZeroJudge D155: 序章-永夜抄-A

題目敘述

本題採EOF方式收資料,每筆資料會有兩個字串,分別代表「紫」和「靈夢」所出的拳,當收到Game Over的時候停止收資料,並且輸出誰贏得場次比較多,如果紫勝利則輸出「螢火的蹤跡」,反之則輸出「悲慘的籌措起香油錢」。每一次收資料也需輸出這一局是誰勝利。


範例輸入 #1

Scissors Stone

Paper Stone

Paper Stone

Scissors Paper

Game Over


範例輸出 #1

靈夢獲勝

紫獲勝

紫獲勝

紫獲勝

螢火的蹤跡


解題思路

將某一個人的勝利條件設為if,else就會是另外一個人勝利。

解題程式碼如下 (僅供參考):

#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";
}

留言