输入 n 个整数,输出其中最小的 k 个
输入描述:
第一行输入两个整数 n 和 k
第二行输入一个整数数组
输出描述:
从小到大输出最小的 k 个整数,用空格分开;
示例:
输入:
5 2
1 3 5 7 2
输出:
1 2
while True:
try:
n, k = map(int, input().split())
a = list(map(int, input().split()))
a.sort()
print(" ".join(map(str, a[:k])))
except:
break
【注】
map(func, seq1[, seq2...])
第一个参数接受一个函数名,后面的参数接受一个或多个可迭代的序列,返回的是一个集合。
map() 函数是将 func 作用于 seq 中的每一个元素,并将所有的调用的结果作为一个 list 返回。
如果 func 为 None, 作用同 zip()
map(int, input().split()) 将输入的值通过空格分开,int 函数将其转换为整形数据,
map() 函数将输入的多个数据的结果生成一个迭代器 a,迭代器的结果可以通过 list(a) 打印出来。
函数 string.join()
join(): 连接字符串数组,将字符串、元组、列表中的元素以指定的字符串连接生成一个新的字符串;
join() 函数语法:"sep".join(seq)
sep: 分隔符,可以为空;
seq: 要连接的元素序列、字符串、元组、字典
即:以sep 作为分隔符,将 seq 所有的元素合并成一个新的字符串;
返回值:返回一个以分隔符 sep 连接各个元素后生成的字符串;