题解 | #坐标移动# golang

坐标移动

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

package main

import (
    "fmt"
    "strconv"
    "strings"
)

func main() {
    a := ""
    var x = 0
    var y = 0
    for {
        n, _ := fmt.Scan(&a)
        if n == 0 {
            break
        } else {
            var strList = strings.Split(a, ";")

            for _, item := range strList {
                if len(item) == 0 {
                    continue
                }
                var num = getNum(item[1:])
                if num < 0 {
                    continue
                }
                switch item[0] {
                case 'A':
                    x -= num
                case 'S':
                    y -= num
                case 'W':
                    y += num
                case 'D':
                    x += num

                }
            }
            fmt.Print(x, ",", y)

        }
    }
}

func getNum(str string) int {

    var num, err = strconv.Atoi(str)
    if err != nil {
        return -1
    }
    return num
}
全部评论

相关推荐

2025-12-28 22:19
门头沟学院 Java
不敢追165女神:简历写得毫无特点,你说你要是大二或者大三找寒假实习到暑期实习这段时间,你的简历还能约到面试。但是你是研究生哥,面试官不会因为你是研究生而降低要求,反而会觉得你是研究生才学了这么一点?为什么我不找个同阶段的本科生?
简历中的项目经历要怎么写
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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