使用 Python 查找体育场在时间 t 时站立的观众数量
体育场里有 n 个观众,他们从 1 到 n 编号。现在遵循以下情况 -
在时间 t1,第一个观众站立。
在时间 t2,第二个观众站立。
…
在时间 tk,第 k 个观众站立。
在时间 tk + 1,第 (k + 1) 个观众站立,第一个观众坐下。
在时间 tk + 2,第 (k + 2) 个观众站立,第二个观众坐下。
…
在时间 tn,第 n 个观众站立,第 (n – k) 个观众坐下。
在时间 tn + 1,第 (n + 1 – k) 个观众坐下。
…
在时间 tn + k,第 n 个观众坐下。
因此,如果输入类似于 n = 11,k = 6,t = 4,则输出将为 4,因为在时间 t1,第 1 个观众站立,然后在时间 t2,第 2 个观众站立,然后在时间 t3,第 3 个观众站立,最后在时间 t4,第 4 个观众站立。这样,结果是 4,因为总共有 4 个观众站立。
为了解决这个问题,我们将遵循以下步骤 -
如果 t <= k,则
返回 t
否则,当 t <= n 时,则
返回 k
否则,
res := t - n
res := k - res
返回 res
示例
让我们看看以下实现以更好地理解 -
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))
输入
11, 6, 4
输出
4
广告