题解 | #坐标移动#
坐标移动
https://www.nowcoder.com/practice/119bcca3befb405fbe58abe9c532eb29
package main import ( "bufio" "fmt" "os" "strconv" "strings" ) func main() { scanner := bufio.NewScanner(os.Stdin) for scanner.Scan() { str := scanner.Text() strSli := strings.Split(str, ";") var x, y int for _, val := range strSli { if len(val) != 2 && len(val) != 3 { continue } if val[0] != 'A' && val[0] != 'D' && val[0] != 'W' && val[0] != 'S' { continue } numStr := val[1:] num, err := strconv.Atoi(numStr) if err != nil { continue } if num < 0 || num > 99 { continue } switch val[0] { case 'A': x += -num case 'D': x += num case 'W': y += num case 'S': y += -num default: continue } } fmt.Printf("%d,%d\n", x, y) } }