สมมติว่าเรามีเมทริกซ์ 2 มิติ โดยที่แต่ละแถวและคอลัมน์เรียงตามลำดับที่ไม่ลดลง เราต้องหาจำนวนที่น้อยที่สุดที่ n
ดังนั้นหากอินพุตเป็นแบบ
2 | 4 | 30 |
3 | 4 | 31 |
6 | 6 | 32 |
และ n =4 ผลลัพธ์จะเป็น 6
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- lst :=รายการใหม่
- สำหรับแต่ละแถว i ในเมทริกซ์ ทำ
- สำหรับแต่ละเซลล์ j ใน i ทำ
- ใส่ j ต่อท้าย lst
- สำหรับแต่ละเซลล์ j ใน i ทำ
- เรียงลำดับรายการก่อน
- ส่งคืน lst[n]
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
ตัวอย่าง
class Solution: def solve(self, matrix, n): lst = [] for i in matrix: for j in i: lst.append(j) lst.sort() return lst[n] ob = Solution() matrix = [ [2, 4, 30], [3, 4, 31], [6, 6, 32] ] n = 4 print(ob.solve(matrix, n))
อินพุต
matrix = [ [2, 4, 30], [3, 4, 31], [6, 6, 32] ] n = 4
ผลลัพธ์
6