统计机器人在 C++ 中到达最终位置所需步数的代码
假设我们有两个坐标 (x1, y1) 和 (x2, y2)。一个机器人位于点 (x1, y1) 处,并希望前往点 (x2, y2)。在一小步中,机器人可以向其 8 个相邻坐标中的一个单元格移动。我们必须找出到达最终位置所需的最小步数。
因此,如果输入类似于 x1 = 3; y1 = 4; x2 = 6; y2 = 1;,那么输出将为 3,因为
步骤
为了解决这个问题,我们将遵循以下步骤 −
return maximum of |x2 - x1| and |y2 - y1|
示例
为了更好地理解,让我们看看以下实现 −
#include <bits/stdc++.h> using namespace std; int solve(int x1, int y1, int x2, int y2){ return max(abs(x2 - x1), abs(y2 - y1)); } int main(){ int x1 = 3; int y1 = 4; int x2 = 6; int y2 = 1; cout << solve(x1, y1, x2, y2) << endl; }
输入
3, 4, 6, 1
输出
3
广告