题解 | #输入n个整数,输出其中最小的k个#

输入n个整数,输出其中最小的k个

http://www.nowcoder.com/practice/69ef2267aafd4d52b250a272fd27052c

#偷懒了,没有写排序的做法(用的是python的sort()方法)
while 1:
    try:
        s=input().split()
        s_nums=input()
        n,k=int(s[0]),int(s[1])
        nums=[int(i) for i in s_nums.split()]
        l=[i for i in nums[0:k]]
        #用来存储遍历截至目前为止的最小的k个数字
        l.sort()
        for j in range(k,n):
            if nums[j]<l[-1]:
                l[-1]=nums[j]
                l.sort()
        print(' '.join([str(i) for i in l])) 
        #这里也是的,不可以直接对int用' '.join,需要先转换为str
    except:
        break
全部评论

相关推荐

1 1 评论
分享
牛客网
牛客企业服务