时间限制: 1Sec 内存限制: 128MB
题目描述:(原题链接)
玩家1和玩家2各出一张牌,看谁大。如果两张牌都不是王牌花色或则都是王牌花色,
则牌面大的牌大,如果牌面一样大则一样大。若其中一张牌是王牌而另一张不是,则
无论牌面如何都是王牌花色大。
输入:
第一行一个数字n,代表数据组数(n <= 10)
对于每组数据,首先输入一个字符(S\H\D\C),表示王牌花色。
接下去一行有两张牌面,表示为牌面花色,如8D、9S等。
样例输入:
1
H
QH 9S
输出:
对于每组数据,输出第一张牌是否比第二张牌大,若是则输出YES,否则输出NO
样例输出 :
YES
解题思路:
字符串分割!简单的判断
注意事项:
见代码所示
参考代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n=in.nextInt(); //表示组数
while(n--!=0) {
char ch =in.next().charAt(0); //表示王牌花色的标记
String s1=in.next(),s2=in.next(); //表示需要比较的两张牌
if((s1.charAt(1)!=ch&&s2.charAt(1)!=ch)||(s1.charAt(1)==ch&&s2.charAt(1)==ch)) { //两张都是或都不是花色则比较数值
if(s1.charAt(0)>s2.charAt(0))
System.out.println("YES");
else
System.out.println("NO");
}
else { //一张花色则花色大
if(s1.charAt(1)==ch)
System.out.println("YES");
else
System.out.println("NO");
}
}
in.close();
}
}