小说网站怎么推广seo刷网站
HJ58 输入n个整数,输出其中最小的k个
描述
对于输入的 n 个整数,升序输出其中最小的 k 个。
输入描述:
第一行输入两个整数 n,k(1≦n≦1000; 1≦k≦n)。
第二行输入 n 个整数 a1 ,a2 ,…,an (1≦ai ≦10^4 ) 代表给定的数字。
输出描述:
在一行中升序输出最小的 k 个整数。
示例1
输入:5 21 3 5 7 2
输出:1 2
思路是调用Arrays.sort(numbers)
升序排序后取前k个是对的。
import java.util.Scanner;
import java.util.Arrays;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNext()) { // 注意 while 处理多个 caseint n = in.nextInt();int k = in.nextInt();Integer[] numbers = new Integer[n];for(int i=0;i<n;i++){numbers[i] = in.nextInt();}Arrays.sort(numbers);for(int j=0;j<k;j++){System.out.print(numbers[j]+" ");}}}
}