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

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


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

ดังนั้นหากอินพุตเป็นแบบ

2
3
4
5
10
6
4
2
1
4
6
7
1
5
6
7

จากนั้นผลลัพธ์จะเป็น True เนื่องจากผลรวมของแถวและคอลัมน์แรกคือ (2 + 3 + 4 + 5) =14 และ (2 + 10 + 1 + 1) =14

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • row :=จำนวนแถวของ mat
  • col :=จำนวนคอลัมน์ของ mat
  • total_row :=0, total_col :=0
  • สำหรับฉันในช่วง 0 ถึงแถว - 1 ทำ
    • total_row :=0, total_col :=0
    • สำหรับ j ในช่วง 0 ถึง col - 1 ทำ
      • total_row :=total_row + mat[i, j]
      • total_col :=total_col + mat[j, i]
    • ถ้า total_row เหมือนกับ total_col แล้ว
      • คืนค่า True
  • คืนค่าเท็จ

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

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

def Solve(mat):row =len(mat) col =len(mat[0]) total_row =0 total_col =0 สำหรับฉันในช่วง (แถว):total_row =0 total_col =0 สำหรับ j ในช่วง (col ):total_row +=mat[i][j] total_col +=mat[j][i] if total_row ==total_col:return True return เมทริกซ์เท็จ =[ [2,3,4,5], [10,6, 4,2], [1,4,6,7], [1,5,6,7]] พิมพ์(แก้(เมทริกซ์))

อินพุต

<ก่อน>[ [1,2,3,4],

[9,5,3,1],

[0,3,5,6],

[0,4,5,6]

]

ผลลัพธ์

จริง