题解 | #坐标移动#

坐标移动

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

a=input().split(';')
b1=[]
c=['A','D','W','S']
for i in a:
    if len(i)>=1:
        v1 = i[0]
        v2 = i[1:]
    else:continue
    if v1 in c and v2.isdigit() and int(v2) < 100:
        if v1=='A':
            value = [-1, 0]
        elif  v1=='D':
            value = [1, 0]
        elif v1 =='W':
            value = [0,1]
        elif v1 =='S':
            value = [0, -1]
        else :
            value = [0,0]
        value[0]=int(value[0])*int(v2)
        value[1]=int(value[1])*int(v2)
        b1.append(value)
aa,bb =0 ,0
for j in b1:
    aa=aa+j[0]
    bb=bb+j[1]
print('%d,%d'%(aa,bb))

1.c=['A','D','W','S'] 定义方向的字符必须带引号,否则会被当做变量处理且变量还没定义。同时输入与匹配也需要对应

2. 在第5行中 if len(i)>=1:防止输入的字符串拆分后数组越界导致列表为空或者只有一个元素的时候报异常

全部评论

相关推荐

Southyeung:我说一下我的看法(有冒犯实属抱歉):(1)简历不太美观,给我一种看都不想看的感觉,感觉字体还是排版问题;(2)numpy就一个基础包,机器学习算法是什么鬼?我感觉你把svm那些写上去都要好一点。(2)课程不要写,没人看,换成获奖经历;(3)项目太少了,至少2-3个,是在不行把网上学习的也写上去。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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