210714 石头剪子布

题目描述

石头剪子布,是一种猜拳游戏。起源于中国,然后传到日本、朝鲜等地,随着亚欧贸易的不断发展它传到了欧洲,到了近现代逐渐风靡世界。简单明了的规则,使得石头剪子布没有任何规则漏洞可钻,单次玩法比拼运气,多回合玩法比拼心理博弈,使得石头剪子布这个古老的游戏同时用于 "意外" 与 "技术" 两种特性,深受世界人民喜爱。

游戏规则:石头打剪刀,布包石头,剪刀剪布。

现在,需要你写一个程序来判断石头剪子布游戏的结果。

输入格式

输入包括 N+1 行:

第一行是一个整数 N,表示一共进行了 N 次游戏。

接下来 NN 行的每一行包括两个字符串,表示游戏参与者 的选择(石头、剪子或者是布):

字符串之间以空格隔开 S1,S2 只可能取值在{"Rock", "Scissors","Paper"}(大小写敏感)中。

输出格式

输出包括 N 行,每一行对应一个胜利者 Player1 或者 Player2 ,或者游戏出现平局,则输出 Tie

样例

样例输入

3
Rock Scissors
Paper Paper
Rock Paper
样例输出

Player1
Tie
Player2
数据范围与提示 分类标签

[字符串] [字符数组]

C++题解代码

#include <bits/stdc++.h>
using namespace std;

int a;
char e;
char d;
string c;
string b;


// The main procedure
int main() {
  cin>>a;
  for (int i = 1; i <= a; i++) {
    cin>>b;
    cin>>c;
    d = b[0];
    e = c[0];
    if (i > 1) {
      cout<<'\n';
    }
    if (d == e) {
      cout<<"Tie";
    } else if (d == 'R') {
      if (e == 'S') {
        cout<<"Player1";
      } else {
        cout<<"Player2";
      }
    } else if (d == 'S') {
      if (e == 'P') {
        cout<<"Player1";
      } else {
        cout<<"Player2";
      }
    } else if (d == 'P') {
      if (e == 'R') {
        cout<<"Player1";
      } else {
        cout<<"Player2";
      }
    }
  }
  return 0;
}

Blockly题解代码图片