2017.12 CCF第一题:最小差值 (Java代码)

问题描述

  给定n个数,请找出其中相差(差的绝对值)最小的两个数,输出它们的差值的绝对值。

输入格式

  输入第一行包含一个整数n
  第二行包含n个正整数,相邻整数之间使用一个空格分隔。

输出格式

  输出一个整数,表示答案。

样例输入

5
1 5 4 8 20

public class MiniDifference {
    public static void main(String[] args) {
        // 输入整数n以及将n个整数放入数组
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] num = new int[n];
        for (int i = 0; i < n; i++) {
            num[i] = sc.nextInt();
        }

        int min = Math.abs(num[0]-num[1]);
        for (int i = 0; i < n; i++) {
            for (int j = 1; j < n-i; j++) {
                if (min > Math.abs(num[i] - num[j+i])) {
                    min = Math.abs(num[i] - num[j+i]);
                }
            }
        }
        System.out.println(min);
    }
}
 

猜你喜欢

转载自blog.csdn.net/qq_40677872/article/details/83830612