第一题代码, 复杂度O(n^2), 一开始没想出来, 不知道对不对:
public class Solution {
    public static int getT(int[] nums){
        int[] diff= new int[nums.length-1];
        for(int i=0; i<diff.length; i++){
            diff[i]= nums[i+1]- nums[i];
        }
        // 在diff中找到最短的重复片段;

        for(int p2=1; p2<diff.length; p2++){
            int p1= 0;
            while(p2< diff.length &&  diff[p1]== diff[p2]){
                p1++;
                p2++;
            };
            if(p2==diff.length){
                return nums[p2- p1]- nums[0];
            }
        }
        return nums[nums.length-1]-nums[0];
    }
    public static void main(String[] args){
        int[] arr= new int[]{1, 2, 3};
        System.out.println(getT(arr));
        arr= new int[]{2, 4, 6};
        System.out.println(getT(arr));
        arr= new int[]{3, 4, 6};
        System.out.println(getT(arr));
    }
}
最后一道题目,之前做过这道题目, 但是只能ac 70%:
https://www.geeksforgeeks.org/two-water-jug-puzzle/