描述
输入n个整数,找出其中最小的k个整数并按升序输出
本题有多组输入样例
数据范围:1≤n≤1000 1≤n≤1000 ,输入的整数满足 1≤val≤10000 1≤val≤10000
输入描述:
第一行输入两个整数n和k
第二行输入一个整数数组
输出描述:
从小到大输出最小的k个整数,用空格分开。
示例1
输入:
5 2
1 3 5 7 2
输出:1 2
#include <iostream>
#include <vector>
#include<algorithm>
using namespace std;
int main() {
int n=0,k=0;
int val=0;
vector<int> vec;
while(cin>>n>>k){
// cout<<n<<" "<<k<<endl;
if(n>=1&&n<=1000 && val>=1&&val<=10000){
for(int i=0;i<n;i++){
cin>>vec[i];
}
sort(vec.begin(),vec.end());
//for(int i=0;i<n;i++)cout<<"vec:"<<vec[i]<<" ";cout<<endl;
for(int l=0;l<k;l++)cout<<vec[l]<<" ";
cout<<endl;
}
}
}
// 64 位输出请用 printf("%lld")g++ -o
该程序接收两个整数n和k,以及n个整数输入,然后找出并按升序输出这n个整数中最小的k个数。程序使用C++编写,通过读取输入,存储在向量中,然后进行排序,最后输出前k个最小的数。
269

被折叠的 条评论
为什么被折叠?



