1、开始的时候把aA的位置放在外面,初始化的时候出问题了,修改后放在第一层循环内。
2、发现还是初始化有问题,想了下,因为我在ss方法中用的是在原字符串后面添加新的字符串,所以应该每输入一次都进行一次初始化,
import java.util.*;
class A {
StringBuffer s = new StringBuffer();
public void ss(String s) {
this.s = this.s.append(s);
}
public int ansS() {
char a, b;
a = s.charAt(0);
b = s.charAt(2);
if (a == b)
return 0;
else if ((a == 'R' && b == 'S') || (a == 'S' && b == 'P')
|| (a == 'P' && b == 'R'))
return 1;
else
return -1;
}
}
public class Main {
public static void main(String[] args) {
Scanner inScanner = new Scanner(System.in);
int T;
T = inScanner.nextInt();
for (int k = 0; k < T; k++) {
int n = inScanner.nextInt();
inScanner.nextLine();
int cntA = 0, cntB = 0;
for (int i = 0; i < n; i++) {
A aA = new A();
aA.ss(inScanner.nextLine());
if (aA.ansS() == 1)
cntA++;
else if (aA.ansS() == -1)
cntB++;
}
if (cntA == cntB)
System.out.println("TIE");
else if (cntA > cntB)
System.out.println("Player 1");
else
System.out.println("Player 2");
}
}
}