Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Số khán giả đứng trong sân vận động tại thời điểm t trong Python


Có n khán giả đánh số 1 đến n. Quy tắc đứng/ngồi:

  • Thời điểm t₁: khán giả 1 đứng.
  • t₂: khán giả 2 đứng.
  • ...
  • tₖ: khán giả k đứng.
  • tₖ₊₁: khán giả k+1 đứng, khán giả 1 ngồi.
  • ...
  • tₙ: khán giả n đứng, khán giả n-k ngồi.
  • tₙ₊₁: khán giả n+1-k ngồi.
  • ...
  • tₙ₊ₖ: khán giả n ngồi.

Ví dụ: n=11, k=6, t=4 -> kết quả 4.

Thuật toán giải quyết

  • Nếu t ≤ k: trả về t.
  • Ngược lại nếu t ≤ n: trả về k.
  • Ngược lại: res = t - n, res = k - res, trả về res.

Ví dụ minh họa

def how_many_stand(n, k, t):
    if t <= k:
        return t
    elif t <= n:
        return k
    else:
        res = t - n
        res = k - res
        return res

n = 11
k = 6
t = 4
print(how_many_stand(n, k, t))  # 4

Đầu vào

11, 6, 4

Đầu ra

4