题解 | #坐标移动#

坐标移动

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

按照流程来,设定一个函数realmove专门用于判断坐标移动输入是否合法,如果合法,再进行main内的移动操作
合法的定义:
1.输入的move字符串长度只能为2或者3,长度为0,1输入也不会走,长度大于3,不合法
2.输入的move字符串定义为W/A/S/D+数字(注:str类型,需要转换),所以从前往后遍历一遍,如果第一项为W/A/S/D(可以使用set来快速查询),第二三项都是数字字符,那么就是合法字符串
a = input().split(";")
x = 0
y = 0
temp = set('WASD')
def realmove(char):
    if len(char)>3 or len(char) == 0:#大于3个字符或者没有字符肯定是无效输入
        return False
    if char[0] not in temp:
        return False
    for i in char[1::]:#字符串至少2位
        if ord(i) > ord('9') or ord(i) < ord('0'):#除去初始的ADWS之外,后续均为数字
            return False
    return True
for i in a:
    if realmove(i):
        if i[0] == 'A':
            x -= int(i[1::])
        if i[0] == 'D':
            x += int(i[1::])
        if i[0] == 'W':
            y += int(i[1::])
        if i[0] == 'S':
            y -= int(i[1::])
print(str(x)+','+str(y))


全部评论

相关推荐

感觉他们一点都不了解现在这个社会就业有多难,已经在牛客刷到好多篇&nbsp;延毕的帖子了,延毕就会导致已经找好的工作就没了,还得重新再找,学校和老师们是怎么想的呢????看到学生丢失工作会开心吗&nbsp;就业数据都在造假,真实的就业困难不去解决&nbsp;一个个真是好样的
从今天开始狠狠卷JVAV_癫:学生看到的是导师不放实习导致offer黄了。 导师看到的是招进来的学生吃自己补助和自己的招生名额,却没给自己升迁带来任何帮助,还要跑路。 根本利益的不一致,最主要留校的导师大概率是职场上招聘失败的,被迫留校的,什么牛鬼蛇神都会有
点赞 评论 收藏
分享
05-20 13:59
门头沟学院 Java
米黑子米黑子:你这个成绩不争取下保研?
点赞 评论 收藏
分享
06-02 15:53
阳光学院 Java
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-27 15:19
简历上能写3个月吗?
码农索隆:大胆写,主要你能把实习经历包装好,可以看一下我这篇帖子https://www.nowcoder.com/share/jump/4888395581180798063
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

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