如何将数组[(9, 3), (5, 15), (5, 1), (13, 1), (15, 19), (11, 17), (7, 19), (15, 5)]和一个21x21的数组内的坐标做对比若有坐标相同的则退出for循环并打印相同的坐标
时间: 2023-09-20 18:10:07 浏览: 58
w3school PHP参考手册 飞龙整理 20141029
4星 · 用户满意度95%
可以通过以下代码实现:
```python
arr = [(9, 3), (5, 15), (5, 1), (13, 1), (15, 19), (11, 17), (7, 19), (15, 5)]
coord_arr = [[0]*21 for _ in range(21)] # 初始化21x21的数组,所有元素均为0
for coord in arr:
x, y = coord
if coord_arr[x][y] != 0: # 如果该坐标已经被占用
print("相同的坐标为:", coord)
break
else:
coord_arr[x][y] = 1 # 标记该坐标已经被占用
```
首先,我们初始化一个21x21的数组`coord_arr`,所有元素均为0。然后,我们遍历数组`arr`中的每个坐标,提取其横、纵坐标`x`和`y`。如果`coord_arr[x][y]`不为0,说明该坐标已经被占用,此时我们打印出相同的坐标并退出循环。否则,我们标记该坐标已经被占用,即将`coord_arr[x][y]`赋值为1。
阅读全文