发现亚军得分的 Python 程序
假设我们有一份包含不同参与者得分的列表。我们必须找到亚军得分。
因此,如果输入类似于 scores = [5,8,2,6,8,5,8,7],则输出将为 7,因为获胜得分是 8,第二高得分是 7。
要解决此问题,我们将遵循以下步骤:
- winner := -99999
- runner_up := -99999
- 对于 scores 中的每个 i,执行
- 如果 i > winner,则
- winner := i
- runner_up := winner
- 否则,当 i < winner 且 i > runner_up 时,则
- runner_up := i
- 如果 i > winner,则
- 返回 runner_up
范例
让我们看看以下实现以获得更好的理解
def solve(scores):
winner = -99999
runner_up = -99999
for i in scores:
if (i > winner):
winner, runner_up = i, winner
elif (i < winner and i > runner_up):
runner_up = i
return runner_up
scores = [5,8,2,6,8,5,8,7]
print(solve(scores))输入
[5,8,2,6,8,5,8,7]
输出
7
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP