华为OD机试真题-反射计数-2023年OD统一考试(C卷)

题目描述:

给定一个包含 0 和 1 的二维矩阵

给定一个初始位置和速度

一个物体从给定的初始位置触发, 在给定的速度下进行移动, 遇到矩阵的边缘则发生镜面反射

无论物体经过 0 还是 1, 都不影响其速度

请计算并给出经过 t 时间单位后, 物体经过 1 点的次数

矩阵以左上角位置为[0, 0](列(x), 行(行)), 例如下面A点坐标为[2, 1] (第二列, 第一行)

+--------------------------- 递增(x)
| 0 0 1 0 0 0 0 1 0 0 0 0
| 0 0 1 0 0 0 0 1 0 0 0 0
| 0 0 1 0 0 0 0 1 0 0 0 0
| 0 0 1 0 0 0 0 1 0 0 0 0
| 0 0 1 0 0 0 0 1 0 0 0 0
| 0 0 1 0 0 0 0 1 0 0 0 0
| 0 0 1 0 0 0 0 1 0 0 0 0
|
递增(y)

注意:

  1. 如果初始位置的点是 1, 也计算在内
  2. 时间的最小单位为1, 不考虑小于 1 个时间单位内经过的点

输入描述:

第一行为初始信息

<w> <h> <x> <y> <sx> <sy> <t>

第二行开始一共h行, 为二维矩阵信息

其中

w, h为矩阵的宽和高

x, y为起始位置

sx, sy为初始速度

t为经过的时间

所有输入

猜你喜欢

转载自blog.csdn.net/2301_76848549/article/details/135446493