用 Python 查找时间 t 时体育场内站立的观众人数

pythonserver side programmingprogramming更新于 2025/10/15 20:28:17

体育场内有 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

相关文章


有用资源