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

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

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

#include<stdio.h>
void swap(int *arr,int i,int j){
    if(i==j)return ;
    int t=arr[i];
    arr[i]=arr[j];
    arr[j]=t;
}
int main(){
    int n,k,arr[1000];
    while(~scanf("%d",&n)){
        scanf("%d",&k);
        for(int i=0;i<n;i++){
            scanf("%d",arr+i);
        }
        for(int i=0;i<k;i++){
            int min=i;
            for(int j=i+1;j<n;j++){
                if(arr[min]>arr[j])min=j;
            }
            swap(arr,i,min);
        }
        for(int i=0;i<k;i++){
            printf("%d ",arr[i]);
        }
        printf("\n");
    }
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 11:45
你不要过来啊啊啊啊啊啊啊
码农索隆:对面:“今天你不面也得面”
点赞 评论 收藏
分享
陈逸轩1205:才105 哥们在养生呢
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务