您的位置:首页 > 其它

华为机试练习---求最小差值

2014-09-02 21:23 337 查看
package huawei;

import java.util.Arrays;
import java.util.Scanner;

/**
* 要从5个人中选取2个人作为礼仪,其中每个人的身高范围为160-190,
* 要求2个人的身高差值最小(如果差值相同的话,选取其中最高的两人),以升序输出两个人的身高。
Sample input:161 189 167 172 188
Sample outPut: 188 189

* @author USER
*/
public class ChooseHeight {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int size = 5;
int[] a = new int[size];
for (int i = 0; i < a.length; i++) {
a[i] = in.nextInt();
}

Arrays.sort(a);
int temp = 30;//最大差值30
int m = 0;
for (int i = 0; i < a.length-1; i++) {
if (a[i]>=160 && a[i]<= 190) {
if (a[i+1] - a[i] <= temp) {
temp = a[i+1] - a[i];
m = i;
}
}
}
System.out.println(a[m]+" "+a[m+1]);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: