题目描述
小明和李华自创了一个双手石头、剪刀、布的游戏。他们背对背分别用左手和右手各出一个石头、剪刀或布的手势(双手可以出一样的),然后根据下面的规则判断输赢。
剪刀、石头、布的规则:
如果一方出石头,一方出剪刀,则石头方获胜;
如果一方出石头,一方出布,则出布方获胜;
如果一方出剪刀,一方出布,则出剪刀方获胜;
如果两方出的一样,则平局。
双手剪刀、石头、布的规则:
一、如果小明的左手赢了李华的左手:
如果小明的左手赢了李华的右手或平局,则小明获胜;
如果小明的左手输给了李华的右手:
如果小明的右手赢了李华的右手,则小明获胜;
如果小明的右手输给了李华的右手或平局,则李华获胜。
二、如果小明的左手与李华的左手平局:
如果小明的右手赢了李华的右手,则小明获胜;
如果小明的右手输给了李华的右手,则李华获胜;
如果小明的右手与李华的右手平局,则平局。
三、如果小明的左手输给了李华的左手:
如果小明的右手输给了李华的左手或平局,则李华获胜;
如果小明的右手赢了李华的左手;
如果小明的右手赢了李华的右手或平局,则小明获胜;
如果小明的右手输给了李华的右手,则李华获胜。
输入
第一行输入小明左手和右手的手势。
第二行输入李华左手和右手的手势。
(Y 表示剪刀 O 表示石头 H 表示布)
输出
输出为一行,如果小明赢了,输出 MING,如果李华赢了,输出 LIHUA,如果平局输出 TIE。
#include<stdio.h>
int game(char a, char b) {
int res = 0;
if((a == 'Y' && b == 'H')||(a == 'O' && b == 'Y')||(a == 'H'&& b == 'O')){
res = 1;
} else if (a == b) {
res = 0;
} else {
res = -1;
}
return res;
}
void play(char *a1, char *a2) {
int p1 = game(a1[0], a2[0]);
int p2 = game(a1[0], a2[2]);
int p3 = game(a1[2], a2[0]);
int p4 = game(a1[2], a2[2]);
if (p1 > 0) {
if (p2 >= 0) {
printf("MING\n");
} else {
if (p4 > 0){
printf("MING\n");
} else {
printf("LIHUA\n");
}
}
} else if (p1 == 0) {
if (p4 > 0) {
printf("MING\n");
} else if (p4 < 0){
printf("LIHUA\n");
} else {
printf("TIE\n");
}
} else {
if (p3 <= 0) {
printf("LIHUA\n");
} else {
if (p4 >= 0) {
printf("MING\n");
} else {
printf("LIHUA\n");
}
}
}
}
int main() {
char arr1[3], arr2[3];
scanf("%[^\n]s", arr1);
//printf("%s\n",arr1);
int a = getchar();
scanf("%[^\n]s", arr2);
//printf("%s\n",arr2);
play(arr1, arr2);
return 0;
}