第一行有一个整数。
随后组数据。
每组的第一行有一个整数。
每组的第二行有一个字符串,仅包含小写英文字符和空格,保证字符串首尾都不是空格。
保证。
输出行,每行一个字符串,代表倒置后的字符串
。
3 9 one space 11 two spaces 14 three spaces
ecapseno secapsowt secapseerht
package main import ( "bufio" "bytes" "fmt" "os" "strconv" ) func main() { reader := bufio.NewReader(os.Stdin) var buf bytes.Buffer // 读取测试用例数量 t t, _ := strconv.Atoi(readLine(reader)) for i := 0; i < t; i++ { // 读取每组数据的 n _, _ = strconv.Atoi(readLine(reader)) // 读取字符串 s s := readLine(reader) // 移除字符串中的空格 s = removeSpaces(s) // 倒置字符串 reversed := reverseString(s) // 缓存输出结果 buf.WriteString(reversed) buf.WriteString("\n") } // 一次性输出所有结果 fmt.Print(buf.String()) } // 读取一行输入 func readLine(reader *bufio.Reader) string { line, _ := reader.ReadString('\n') return line[:len(line)-1] // 去掉换行符 } // 移除字符串中的空格 func removeSpaces(s string) string { return strings.ReplaceAll(s, " ", "") } // 倒置字符串 func reverseString(s string) string { bytes := []byte(s) for left, right := 0, len(bytes)-1; left < right; left, right = left+1, right-1 { bytes[left], bytes[right] = bytes[right], bytes[left] } return string(bytes) }