我有一个我需要完成的任务:
:“有N名运动员在一次掷链球中比赛。他们每人都投M球。投得最好的运动员赢了。如果有几次,那么所有尝试的结果都最好的运动员获胜。如果有几次,那么最小次数的运动员就被认为是赢家。确定比赛的获胜者人数。”
我可以找到最高的最佳投掷胜利,但我找不到最小数目的运动员。
示例输入:
4 3
4 2 7
1 2 7
1 3 5
4 1 6示例输出:
1到目前为止我的代码:
row,columns = map(int,input().split())
matrix = [[int(i) for i in input().split()] for j in range(row)]
numbers = []
suma = []
for i in range(row):
numbers.append(matrix[i][0])
sumaa = sum(matrix[i]) - matrix[i][0]
suma.append(sumaa)
new_matrix = [numbers,suma]
print(new_matrix.index(max(new_matrix)))发布于 2021-04-22 21:25:54
input = """4 3
4 2 7
1 2 7
1 3 5
4 1 6
"""
def winner(input):
athletes = input.split("\n")
best_throw = max(" ".join(athletes).split(" "))
best_total = max(map(lambda s: sum(list(map(lambda n: int(n) if n != '' else 0, s.split(" ")))), athletes))
best_athletes_indexes = []
for i, athlete in enumerate(athletes):
if best_throw in athlete.split(" ") and sum(map(int, athlete.split(" "))) == best_total:
best_athletes_indexes.append(i)
best_athletes_attempts = list(map(lambda i: len(athletes[i].split(" ")), best_athletes_indexes))
return best_athletes_indexes[best_athletes_attempts.index(min(best_athletes_attempts))]
print(winner(input))请不要让我解释这是两年来我写的第一条蟒蛇。我来自一个类型安全的世界
我的搜索历史实际上是“从列表python中删除项”python标准库是奇怪的。
发布于 2021-04-23 00:08:26
这是答案
a = []
b = []
row, columns = map(int, input().split())
for i in range(row):
a.append(list(map(int, input().split())))
for i in range(row):
b.append([max(a[i]), sum(a[i])])
print(b.index(max(b)))发布于 2021-04-23 05:38:06
试试下面的代码:
row, columns = map(int, input().split())
matrix = [list(map(int, input().split())) for _ in range(row)]
matrix_max_sum_elms = [[max(row), sum(row)] for row in matrix]
best_athlete_ind = matrix_max_sum_elms.index(max(matrix_max_sum_elms)) + 1
print(best_athlete_ind)解释:
首先,我们创建一个具有输入值的列表列表,然后创建一个新的列表列表,其中每个列表包含输入值的最大值和元素之和。因此,我们接受包含最大值的列表的索引,并添加1,因为索引从0开始。
https://stackoverflow.com/questions/67219775
复制相似问题