题解 | #坐标移动#

坐标移动

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

operation = input().rstrip(';').split(';') # 此时operation是一个列表,如['A11', 'B222']
dict_ = {'A':[-1, 0], 'D':[1, 0], 'W':[1, 1], 'S':[-1, 1]} # 列表里的第一位说明了加减的数量,第二位说明在odom的哪一位进行操作,0代表x轴,1代表y轴。
odom = [0, 0]
for i in operation: # 遍历operation列表里的每一个元素,第一个元素就是'A11'
    if 1 < len(i) < 4: # 如果合法,则应该操作字符的长度应该是2或者3,如A1或者A10
        if i[0] in list(dict_.keys()): # 判断这个元素(字符串)的第一位是不是在我创建的字典的键列表,如果第一位不在,则说明这个字符串不合法。
            if i[1:].isnumeric(): # 判断这个元素(字符串)的第二(和第三位)是否为数字。比如'11'或者'1',如果不是,则不合法。
                odom[dict_[i[0]][1]] += int(dict_[i[0]][0]) * int(i[1:]) 
            #   对应坐标 = 对应坐标 + 操作*数量
print(str(odom[0]) + ',' + str(odom[1]))

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-09 13:05
TMD找工作本来就烦,这东西什么素质啊😡
Beeee0927:hr是超雄了,不过也是有道理的
点赞 评论 收藏
分享
认真搞学习:28小登的建议,投算法岗不要写什么物理竞赛,互联网+,多写点项目,用什么算法做了什么。还有本科算法是不可能的开发你这个也没有项目啊
点赞 评论 收藏
分享
能干的三文鱼刷了10...:公司可能有弄嵌入式需要会画pcb的需求,而且pcb能快速直观看出一个人某方面的实力。看看是否有面试资格。问你问题也能ai出来,pcb这东西能作假概率不高
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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