列表

详情


NC215157. 谁输了谁白给!

描述

武鸣这几天温度骤降,小明和小暗都不想去拿快递,于是他们就决定猜拳决定谁去拿快递。分别用“S”,“J”,“B”表示石头,剪刀,布。石头可以赢剪刀,剪刀可以赢布,布可以赢石头。小暗很拽,认为自己战无不胜,所以会提前宣告自己会出什么,小明本着“公平”的精神,限制自己仅在两种选择中选用一个。谁输谁去拿快递,若是平局了,那么小明和小暗就要一起去拿快递了。

小明想赢,并且不想输。

输入描述

第一行输入包括两个字符a,b,表示小明所能选择出的两种。

 

第二行输入包括一个字符c,表示小暗所选出的。

 

输入保证a,b,c∈{′S′,′J′,′B′}且a≠b。

输出描述

若小明胜出,则输出"MWIN"

 

若小暗胜出,则输出"AWIN"

 

若平局则输出"QAQ"

 

(不包括双引号)

示例1

输入:

SJ
B

输出:

MWIN

说明:


原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C(clang11) 解法, 执行用时: 1ms, 内存消耗: 364K, 提交时间: 2020-12-20 16:11:52

#include<stdio.h> 
int main()
{char a,b,c;
scanf("%c%c\n",&a,&b);
scanf("%c",&c);
if((a=='S'&&b=='J')||(a=='J'&&b=='S'))
{if(c=='S')
printf("QAQ\n");
if(c=='J')
printf("QAQ\n");
if(c=='B')
printf("MWIN\n");
}
if((a=='S'&&b=='B')||(a=='B'&&b=='S'))
{if(c=='S')
printf("MWIN\n");
if(c=='J')
printf("MWIN\n");
if(c=='B')
printf("QAQ\n");
}
if((a=='J'&&b=='B')||(a=='B'&&b=='J'))
{if(c=='S')
printf("MWIN\n");
if(c=='J')
printf("QAQ\n");
if(c=='B')
printf("MWIN\n");
}
return 0;}

Java(javac 1.8) 解法, 执行用时: 26ms, 内存消耗: 11164K, 提交时间: 2020-12-20 16:06:51

import java.util.*;
public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//s=石头  , j=剪刀, B = 布;
		String s1 = sc.next();
		String s2 = sc.next();
		char s='S',j='J',p='B';
		char a = s1.charAt(0);
		char b = s1.charAt(1);
		char c = s2.charAt(0);
		if((c==s&&a!=p&&b!=p)||(c==j&&a!=s&&b!=s)||(c==p&&a!=j&&b!=j))
			System.out.println("QAQ");
		else {
			System.out.println("MWIN");
		}
	}
}

Python3(3.9) 解法, 执行用时: 15ms, 内存消耗: 2920K, 提交时间: 2020-12-20 16:06:54

m=input()
a=input()
if(m[0]==a or m[1]==a):
    if(m[1]=='S' and a=='J'):
        print("MWIN")
    elif(m[1]=='J' and a=='B'):
        print("MWIN")
    elif (m[1] == 'B' and a == 'S'):
        print("MWIN")
    elif (m[0] == 'S' and a == 'J'):
        print("MWIN")
    elif (m[0] == 'J' and a == 'B'):
        print("MWIN")
    elif (m[0] == 'B' and a == 'S'):
        print("MWIN")
    else:
        print("QAQ")
else:
    print("MWIN")

C++(clang++11) 解法, 执行用时: 2ms, 内存消耗: 492K, 提交时间: 2020-12-20 15:25:24

#include<algorithm>
#include<cstring>
#include<iostream>
using namespace std;

int n; 
char a,b,c;
char d[3]={'S','J','B'};
char e[3]={'B','S','J'};
int main(){
	cin>>a>>b;
	cin>>c;
	int t=0;
	for(int i=0;i<3;i++){
		if(a==e[i]&&c==d[i]){
			t=1;
		}
		if(b==e[i]&&c==d[i]){
			t=1;
		}
	}
	if(t){
		cout<<"MWIN";
	}
	else
		cout<<"QAQ";		
	return 0;
} 

上一题