解题思路:
黑色的转向作为基准:(如果是要白色为底,则把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 人评分
2003年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:622 |
C语言程序设计教程(第三版)课后习题3.7 (C++代码)浏览:1024 |
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:612 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:657 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:1264 |
WU-输入输出格式练习 (C++代码)浏览:1134 |
三角形 (C++代码)记忆化搜索浏览:1318 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:642 |
C语言程序设计教程(第三版)课后习题9.1 (C语言代码)浏览:710 |
1126题解浏览:649 |