失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 华为机试HJ58:输入n个整数 输出其中最小的k个

华为机试HJ58:输入n个整数 输出其中最小的k个

时间:2019-06-07 08:30:00

相关推荐

华为机试HJ58:输入n个整数 输出其中最小的k个

作者:翟天保Steven

版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处

题目描述:

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

本题有多组输入样例,请使用循环读入,比如while(cin>>)等方式处理

输入描述:

第一行输入两个整数n和k

第二行输入一个整数数组

输出描述:

输出一个从小到大排序的整数数组

示例:

输入:

5 21 3 5 7 2

输出:

1 2

解题思路:

本题比较简单,就输入n个整数后用sort快速排序,再输出前k个即可。

测试代码:

#include <iostream>#include <vector>#include <algorithm>using namespace std;int main(){int n,k;while(cin>>n>>k){vector<int> nums;for(int i=0;i<n;++i){int temp;cin>>temp;nums.push_back(temp);}sort(nums.begin(),nums.end());for(int i=0;i<k;++i){cout<<nums[i]<<" ";}cout<<endl;}return 0;}

如果觉得《华为机试HJ58:输入n个整数 输出其中最小的k个》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。