สมมติว่ามีรายการ A, B และค่า k ต้องการนับจำนวนสมาชิกใน A ที่น้อยกว่าอย่างน้อย k สมาชิกใน B
ตัวอย่าง: A = [6,-2,100,11], B = [33,6,30,8,14], k=3 ผลลัพธ์ 3 คือ -2, 6, 11
ขั้นตอนการแก้ปัญหา
- ถ้า
k == 0: คืนlen(A) - เรียง
Bจากมากไปน้อย ct = 0- วนแต่ละ
iในA: ถ้าi < B[k-1]เพิ่มct - คืน
ct
ตัวอย่างโค้ด
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