蓝桥杯例题:
数学老师给小明出了一道等差数列求和的题目。但是粗心的小明忘记了一部分的数列,只记得其中N 个整数。
现在给出这N 个整数,小明想知道包含这N 个整数的最短的等差数列有几项?
输入的第一行包含一个整数N。
第二行包含N 个整数A1.A2,…, AN。(注意A1<=AN 并不一定是按等差数列中的顺序给出)
2<=N<=100000,0<=Ai<=10^9
输出一个整数表示答案。
思路:
先将数组的元素由小到大进行排序,因为已经知道是等差数组,所以两个相邻的数之间的差就是数列的公差,算出公差后,项数等于末项减去首项的差除以公差再加一
代码如下:
public class DengCha {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int N= sc.nextInt();
ArrayList<Integer>