Go的fmt输入老是超时,换成bufio的Scanner来输入就勉强可以通过测试。 时间复杂度应该是O(n),三个切片来维护就好了。 import ( "bufio" "fmt" "os" "strconv" ) func main() { var T, n, m int var sit, cus string in := bufio.NewScanner(os.Stdin) buf := make([]byte, 2e6) in.Buffer(buf, 2e6) in.Scan() T, _ = strconv.Atoi(in.Text()) for ; T &g...