这对您来说是一个相对简单的挑战:
给定一个正整数列表:
将它们排列成网格,然后对每一列求和。例如,如果输入为
[123, 7, 49, 681]
,则网格将如下所示:1 2 3 7 4 9 6 8 1
每列的总和为
[18, 19, 4]
:1 2 3 7 4 9 6 8 1 -------- 18 19 4
查找这些总和的最大值,在这种情况下为19,然后
输出与此最大列在同一索引处的每个数字。在这种情况下,
2 9 8
您不必以任何特定顺序输出这些数字。请注意,即使我们有4个输入,也只有3个输出。如果是平局,请选择最早的索引。例如,如果输入为
[25, 223, 302]
,则您的网格为:2 5 2 2 3 3 0 2 ------- 7 7 5
你应该输出
2 2 3
您可以按照自己喜欢的任何格式打印这些数字。列表格式,换行符分隔,空格分隔等。您不能将输入作为2D数字数组,例如
[[1, 2, 3],
[7],
[4, 9],
[6, 8, 1]
但是除此之外,您可以将输入作为字符串列表,数字列表或任何其他合理的格式。
您还可以假设所有输入都是有效的,并且至少包含两个数字。
像往常一样,最短的答案(以字节为单位)获胜!
测试IO:
#Input #Output
[1, 11, 111, 1111] --> [1, 1, 1, 1]
[1, 12, 123] --> [2, 2]
[987654321, 111] --> [9, 1]
[111, 123456789] --> [9]
[4, 8, 15, 16, 23, 42] --> [4, 8, 1, 1, 2, 4]
[4, 8, 12, 26, 27, 38] --> [2, 6, 7, 8]
[24, 53] --> [2, 5]
[12, 304, 506] --> [4, 6]
[30, 285, 121] --> [0, 8, 2]
0
。英文通常不认为零。