下面是一个使用Python编写的程序示例,用于测试2D数组中是否存在两个1位于同一行或同一列:
def check_duplicate(arr):
rows = len(arr)
cols = len(arr[0])
# 检查行中是否存在两个1
for i in range(rows):
count = 0
for j in range(cols):
if arr[i][j] == 1:
count += 1
if count >= 2:
return True
# 检查列中是否存在两个1
for j in range(cols):
count = 0
for i in range(rows):
if arr[i][j] == 1:
count += 1
if count >= 2:
return True
return False
# 测试数组
arr = [
[0, 0, 1, 0],
[1, 0, 0, 1],
[0, 1, 0, 0],
[0, 0, 0, 1]
]
# 调用函数进行测试
result = check_duplicate(arr)
# 输出结果
if result:
print("存在两个1位于同一行或同一列")
else:
print("不存在两个1位于同一行或同一列")
这个程序首先通过两个嵌套的循环遍历2D数组中的每个元素。然后,它分别检查每一行和每一列中是否存在两个1。如果找到两个1,则返回True,表示存在两个1位于同一行或同一列;如果没有找到,则返回False,表示不存在两个1位于同一行或同一列。
在上面的示例中,我们测试了一个包含4行4列的2D数组,输出结果是"存在两个1位于同一行或同一列",因为第一行和第二行都各自有两个1。你可以根据需要修改2D数组的大小和内容,以测试不同的情况。