สมมติว่าเรามีรายการตัวเลข A และ B สองรายการ และอีกค่าหนึ่งคือ k เราต้องหาจำนวนองค์ประกอบใน A ที่น้อยกว่าอย่างน้อย k องค์ประกอบใน B
ดังนั้น หากอินพุตเป็น A =[6, -2, 100, 11] B =[33, 6, 30, 8, 14] k =3 เอาต์พุตจะเป็น 3 เป็น -2, 6 และ 11 มีอย่างน้อย 3 องค์ประกอบใน B.
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- ถ้า k เท่ากับ 0 แล้ว
- ขนาดผลตอบแทนของ A
- เรียงลำดับ B ในลำดับย้อนกลับ
- ct :=0
- สำหรับแต่ละ i ใน A ทำ
- ถ้าฉัน
- ct :=ct + 1
- ถ้าฉัน
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
ตัวอย่าง
class Solution: def solve(self, A, B, k): if k == 0: return len(A) B.sort(reverse=True) ct = 0 for i in A: if i < B[k - 1]: ct += 1 return ct ob = Solution() A = [6, -2, 100, 11] B = [33, 6, 30, 8, 14] k = 3 print(ob.solve(A, B, k))
อินพุต
[6, -2, 100, 11], [33, 6, 30, 8, 14], 3
ผลลัพธ์
3