以矩阵行为x轴,列为y轴,如何计算(200,100)矩阵中所有的点与某一点的欧式距离之和
时间: 2024-03-13 16:44:29 浏览: 60
Python计算一个点到所有点的欧式距离实现方法
假设某一点的坐标为 (x0, y0),对于矩阵中的任意一个点 (x, y),其与该点的欧式距离为 sqrt((x-x0)^2 + (y-y0)^2)。因此,可以按照如下方法计算所有点与该点的欧式距离之和:
1. 遍历矩阵中的每一个点 (x, y)。
2. 对于每一个点 (x, y),计算其与目标点 (x0, y0) 的欧式距离,即 sqrt((x-x0)^2 + (y-y0)^2)。
3. 将每个点与目标点的欧式距离累加到一个变量中,得到所有点与目标点的欧式距离之和。
以下是 Python 代码示例:
```
import math
def calc_distance_sum(matrix, x0, y0):
distance_sum = 0
for x in range(len(matrix)):
for y in range(len(matrix[0])):
distance_sum += math.sqrt((x-x0)**2 + (y-y0)**2)
return distance_sum
# 示例使用
matrix = [[0 for j in range(201)] for i in range(101)]
distance_sum = calc_distance_sum(matrix, 200, 100)
print(distance_sum)
```
其中,示例代码中生成了一个 201x101 的矩阵,并将其所有元素初始化为 0。然后通过 `calc_distance_sum` 函数计算了所有点与 (200, 100) 的欧式距离之和。
阅读全文