Computer >> Máy Tính >  >> Lập trình >> Python

Chương trình tìm số phần tử trong A nhỏ hơn ít nhất k phần tử trong B trong Python

Giả sử chúng ta có hai danh sách các số A và B, và một giá trị khác k, chúng ta phải tìm số phần tử trong A nhỏ hơn ít nhất k phần tử trong B.

Vì vậy, nếu đầu vào là A =[6, -2, 100, 11] B =[33, 6, 30, 8, 14] k =3, thì đầu ra sẽ là 3, là -2, 6, và 11 là đúng ít hơn 3 phần tử trong B.

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • nếu k giống 0, thì
    • kích thước trả về của A
  • sắp xếp B theo thứ tự ngược lại
  • ct:=0
  • đối với mỗi tôi trong A, thực hiện
    • nếu tôi
    • ct:=ct + 1
  • trả lại ct
  • Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

    Ví dụ

    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))

    Đầu vào

    [6, -2, 100, 11], [33, 6, 30, 8, 14], 3

    Đầu ra

    3