Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ตรวจสอบว่าผลรวมแถวที่ i เท่ากับผลรวมคอลัมน์ที่ i ในเมทริกซ์หรือไม่ ใน Python


ปัญหา

ให้เมทริกซ์ 2 มิติ ตรวจสอบว่ามีแถว i ใดที่ผลรวมเท่ากับคอลัมน์ i หรือไม่

ตัวอย่าง

Matrix 4x4:
Row 0 sum = 2+3+4+5 = 14
Col 0 sum = 2+10+1+1 = 14 → True

แนวคิดการแก้ปัญหา

  1. วนลูปแต่ละแถว i
  2. คำนวณผลรวมแถว i และคอลัมน์ i
  3. ถ้าเท่ากันคืน True ทันที

โค้ดตัวอย่าง

def solve(mat):
    n = len(mat)
    for i in range(n):
        row_sum = sum(mat[i][j] for j in range(n))
        col_sum = sum(mat[j][i] for j in range(n))
        if row_sum == col_sum:
            return True
    return False

matrix = [
    [2, 3, 4, 5],
    [10, 6, 4, 2],
    [1, 4, 6, 7],
    [1, 5, 6, 7]
]
print(solve(matrix))  # True

อินพุต / เอาต์พุต

Input:  [[1,2,3,4],[9,5,3,1],[0,3,5,6],[0,4,5,6]]
Output: True