解题思路:
黑色的转向作为基准:(如果是要白色为底,则把value的值*-1即可注意事项:
参考代码:
m, n = map(int, input().split())
l = [0] * m # 初始化列表
drc = {'L': -1, 'U': 1, 'R': 1, 'D': -1} # 黑色的转向作为基准:(如果是要白色为底,则把value的值*-1即可
turn = ['L', 'U', 'R', 'D'] # 记录转向
for i in range(m):
l[i] = list(map(int, input().split())) # 录入值
# x,y表示初始位置,S表示初始方向,K表示步长
x, y, s, k = input().split()
(x, y, k) = map(int, (x, y, k)) # 修改x,y,k的类型为int
while k > 0:
if l[x][y] == 0: # 在白格
flag = -1
l[x][y] = 1 # 修改格子颜色
else:
flag = 1
l[x][y] = 0 # 修改格子颜色
if s in ['R', 'L']:
x += drc.get(s) * flag
if s in ['U', 'D']: # 修改y
y += drc.get(s) * flag
s = turn[(turn.index(s) + flag) % 4] # 修改方向
# print(s)
k -= 1
print(x, y)
0.0分
0 人评分
【计算直线的交点数】 (C语言代码)浏览:2792 |
点我有惊喜!你懂得!浏览:1988 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:1293 |
C语言程序设计教程(第三版)课后习题8.2 (C语言代码)浏览:5232 |
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:702 |
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:594 |
母牛的故事 (C语言代码)浏览:1428 |
1157题解浏览:716 |
蚂蚁感冒 (C语言代码)浏览:1335 |
简单的a+b (C语言代码)浏览:546 |