题解 | 坐标移动

坐标移动

https://www.nowcoder.com/practice/119bcca3befb405fbe58abe9c532eb29

package main

import (
	"bufio"
	"fmt"
	"os"
	"strconv"
	"strings"
)

func main() {
    r := bufio.NewScanner(os.Stdin)
    r.Scan()
    input := r.Text()

    str := strings.Split(input, ";")

    x, y := 0, 0

    for _, token := range str {
        if !(len(token) == 2 || len(token) == 3) {
            continue
        }

        direction := token[0]
        pos := token[1:]
        if dist, err := strconv.Atoi(pos); err != nil {
            continue
        } else {
            switch direction {
                case 'A': x -= dist
                case 'D': x += dist
                case 'S': y -= dist
                case 'W': y += dist
            }
        }
    }
    fmt.Printf("%d,%d", x, y)

}

全部评论

相关推荐

01-11 08:47
门头沟学院 Java
choumoduji...:读研的目的就是为了以最快的速度和最低的要求完成“学校”规定的毕业标准,而不是所谓课题组的要求
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务