这道题我真的是遭了大坑了,一直死在一个问题上,原因就是我忘了字符串的值不能被直接修改!!!!修改后是返回一个新字符串
题目
`
class Solution {
public String predictPartyVictory(String senate) {
//R和D 可以看作两个对象,这两个对象各自都有 自己被ban和ban别人的属性
int banR=0;
int banD=0;
char[] newsen=new char[senate.length()];
for(int i=0;i<senate.length();i++) {
newsen[i]=senate.charAt(i);
}
while(true) {
for(int i=0;i<senate.length();i++) {
if(newsen[i]=='R') {
if(banR==0) {
banD++;
}else {
banR--;
newsen[i]='X';
}
}else if(newsen[i]=='D') {
if(banD==0) {
banR++;
}else {
banD--;
newsen[i]='X';
}
}
}
boolean existD=false,existR=false;
for(int i=0;i<newsen.length;i++){
if(newsen[i]=='R'){
existR=true;
}if(newsen[i]=='D'){
existD=true;
}
}
if(existD==false){
return "Radiant";
}if(existR==false){
return "Dire";
}
}
}
}