使用JAVA实现循环相克令
一、问题描述:
循环相克令是说有两个人在玩游戏,分别出猎人、枪、狗熊中的一个,其中猎人胜枪,枪胜狗熊,狗熊胜猎人。他们两个人进行若干次比赛,然后我们判断一下每次的胜负。
二、实现思路:
首先我们得定下应该执行多少轮比赛,然后判断每次的胜负。如果我们将每次输入的实际值都作比较的话,我i们得进行9次比较,这个是比较麻烦的。我们可以选择一个较优解,就是我们设置输入为猎人时,值为0.狗熊是1,枪是2.然后因为有(play1+1)==play2的关系下,play2赢,然后我们就可以这样写代码了。如果我们有好几个手势的话,我们也可以照这样写,会方便很多。
三、实现代码:
importjava.util.Scanner;public classwin_or_fail {public static voidmain(String[] args){
Scanner sc=newScanner(System.in);int N=sc.nextInt();while(N-->0){intx,y;
String s1=sc.next(),s2=sc.next();if(s1.equals("Hunter")){
x=0;
}else if(s1.equals("Bear")){
x=1;
}else{
x=2;
}if(s2.equals("Hunter")){
y=0;
}else if(s2.equals("Bear")){
y=1;
}else{
y=2;
}if(x==y){
System.out.println("Tie");
}else if((x+1)%3==y){
System.out.println("Player2");
}else{
System.out.println("Player1");
}
}
}
}