Giả sử chúng ta có một số n, p và q. Bây giờ, giả sử chúng ta đang đứng trong một hàng gồm n người. Chúng tôi không biết mình đang ở vị trí nào, nhưng chúng tôi biết có ít nhất p người phía trước và nhiều nhất q người phía sau chúng tôi. Chúng tôi phải tìm số lượng vị trí khả thi mà chúng tôi có thể đảm nhiệm.
Vì vậy, nếu đầu vào là n =10, p =3, q =4, thì đầu ra sẽ là 5, vì có 10 người và ít nhất 3 người ở phía trước và nhiều nhất 4 người ở phía sau. Vì vậy, chúng ta có thể đứng ở các chỉ số [0, 1, 2, 3, 4]. Ví dụ:ở chỉ số 0, 9 người ở phía trước, 0 người ở phía sau.
Giải pháp rất đơn giản, chúng tôi sẽ trả về giá trị nhỏ nhất của q + 1 và n-p
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, n, p, q): return min(q+1, n-p) ob = Solution() print(ob.solve(n = 10, p = 2, q = 5))
Đầu vào
10, 2, 5
Đầu ra
6