最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Java-身高排序

2023-04-10 09:25 作者:紅葉快樂起來  | 我要投稿

題目描述

小明今年升學到了小學一年級,
來到新班級后,發(fā)現(xiàn)其他小朋友身高參差不齊,
然后就想基于各小朋友和自己的身高差,對他們進行排序,
請幫他實現(xiàn)排序

輸入描述

第一行為正整數(shù)H和N
0 < H < 200 為小明的身高
0 < N < 50 為新班級其他小朋友個數(shù)
第二行為N個正整數(shù)
H1 ~ Hn分別是其他小朋友的身高
取值范圍0 < Hi < 200
且N個正整數(shù)各不相同

輸出描述

輸出排序結(jié)果,各正整數(shù)以空格分割
和小明身高差絕對值最小的小朋友排在前面
和小明身高差絕對值最大的小朋友排在后面
如果兩個小朋友和小明身高差一樣
則個子較小的小朋友排在前面

示例一

輸入

100 10
95 96 97 98 99 101 102 103 104 105

輸出

99 101 98 102 97 103 96 104 95 105

參考解題 Java

import java.util.*;
public class Main{
 ?public static void main(String[] args) {
 ? ?try (Scanner scanner = new Scanner(System.in)) {
 ? ? ?int h = scanner.nextInt();
 ? ? ?int n = scanner.nextInt();
 ? ? ?List<Integer> highs = new ArrayList<>(n);
 ? ? ?for (int i = 0; i < n; i++) {
 ? ? ? ?highs.add(scanner.nextInt());
 ? ? ?}
 ? ? ?solution(h, highs);
 ? ?}
 ?}

 ?private static void solution(int h, List<Integer> highs) {
 ? ?highs.sort((h1, h2) -> {
 ? ? ?int diff1 = Math.abs(h1 - h);
 ? ? ?int diff2 = Math.abs(h2 - h);
 ? ? ?return diff1 == diff2 ? h1 - h2 : diff1 - diff2;
 ? ?});

 ? ?for (int i = 0; i < highs.size(); i++) {
 ? ? ?System.out.print(highs.get(i));
 ? ? ?if (i != highs.size() - 1) {
 ? ? ? ?System.out.print(" ");
 ? ? ?}
 ? ?}
 ?}
}


Java-身高排序的評論 (共 條)

分享到微博請遵守國家法律
景谷| 南召县| 吉首市| 三台县| 武安市| 五峰| 行唐县| 古田县| 南康市| 太康县| 公安县| 砀山县| 延寿县| 泊头市| 平谷区| 富平县| 达州市| 汨罗市| 宝应县| 鹿泉市| 获嘉县| 舒兰市| 策勒县| 佛山市| 安图县| 韩城市| 海丰县| 基隆市| 武定县| 茌平县| 巍山| 林西县| 江安县| 新沂市| 米林县| 上犹县| 宾川县| 平湖市| 遵义市| 新巴尔虎左旗| 府谷县|