Dota2 参议院
func predictPartyVictory(senate string) string {
str := []byte(senate)
rCount, dCount := -1, -1
rCanPass, dCanPass := 0, 0
for rCount != 0 && dCount != 0 {
rCount, dCount = 0, 0
for i, char := range str {
switch char {
case 'R':
if rCanPass > 0 { // 被取消发言权
rCanPass--
str[i] = ' '
} else { // 可以取消 dCanPass 个 D 的发言权
dCanPass++
rCount++
}
case 'D':
if dCanPass > 0 {
dCanPass--
str[i] = ' '
} else {
rCanPass++
dCount++
}
}
}
}
if dCount > 0 {
return "Dire"
}
return "Radiant"
}