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

Chương trình tìm số vị trí có thể có trong dòng n-người với ít người ở phía trước và phía sau bằng Python

Giả sử chúng ta có ba số n, a và b. Hãy xem xét chúng ta đang ở trong một dòng gồm n người. Và chúng tôi không biết về vị trí của chúng tôi trong hàng. Nhưng chúng ta biết có ít nhất một số người ở phía trước và nhiều nhất là b số người phía sau chúng ta. Chúng tôi phải tìm ra số lượng các vị trí có thể có cho chúng tôi.

Vì vậy, nếu đầu vào là n =10 a =3 b =4, thì đầu ra sẽ là 5, vì có 10 người trong hàng 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 tôi đang ở bất kỳ nơi nào [0, 1, 2, 3, 4]. Khi chúng ta ở vị trí 0 thì 9 người ở phía trước, 0 ở phía sau, v.v.

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

  • nếu a + b

    • trả về b + 1

  • nếu a + b> =n thì

    • return n - a

Ví dụ

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn

def solve(n, a, b):
   if a + b < n:
      return b + 1
   if a + b >= n:
      return n - a

n = 10
a = 3
b = 4
print(solve(n, a, b))

Đầu vào

10, 3, 4

Đầu ra

5