赞
踩
描述: 开发一个坐标计算工具,A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。从(0,0)点开始移动,从输入字符串里读取一些坐标,并将最终输入结果输出到输出文件里面。
输入:
合法坐标为A(或D,W,S)+数字(两位以内)
坐标之间用;分隔
非法坐标点进行舍弃,如AA10,A1A,
%
,等
下面是一个简单的例子:
A10;S20;W10;D30;X;A1A;B10A11;;A10;
处理过程:
起点(0,0)
+ A10 = (-10,0)
+ S20 = (-10,-20)
+ W10 = (-10,-10)
+ D30 = (20,-10)
+ x = 无效
+ A1A = 无效
+ B10A11 = 无效
+ 一个空 不影响
+ A10 = (10,-10)
结果 (10,-10)
数据范围: 每组输入的字符串长度满足1<=n<=10000,坐标保证满足:-231<=x,y<=231-1,且数字部分含正数
示例1:
输入:A10;S20;W10;D30;X;A1A;B10A11;;A10;
输出:10,-10
示例2:
输入:ABC;AKL;DA1;
输出:0,0
代码如下(示例):
str = input().split(';')
x, y = 0, 0
for i in str:
if 2 <= len(i) <= 3:
if i[0] in ['A', 'D', 'W', 'S'] and i[1:].isdigit():
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('{0},{1}'.format(x, y))
分享:
人生的黑夜更要有梦。走路的人,路在脚下;筑路的人,路在掌中。其实,任何伟大梦想的飞翔,都植根于脚踏实地的践行。
许多成功人士并不比大多数人有才华。但他们都具有完成困难工作所需要的决心、毅力、专注力及驱动力,能一直奋斗下去,他们要做的只是按照规划和梦想坚持走下去。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。