Example 1:
Input: arr = [3,5,1] Output: true Explanation: We can reorder the elements as [1,3,5] or [5,3,1] with differences 2 and -2 respectively, between each consecutive elements.
Example 2:
Input: arr = [1,2,4] Output: false Explanation: There is no way to reorder the elements to obtain an arithmetic progression.
Constraints:
2 < arr.length <= 1000
-10^6 <= arr[i] <= 10^6
Java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | import java.util.*; public class AP { public static void main(String args[]) { int[] arr = { 3, 5, 1 }; System.out.println(checkAP(arr)); } public static boolean checkAP(int[] arr){ Arrays.sort(arr); // sort the array int diff = arr[1] - arr[0]; // difference for(int i=2; i<arr.length; i++) if(arr[i]-arr[i-1]!=diff) return false; return true; } } |
Python
def checkAP(arr): arr.sort() diff = arr[1] - arr[0] for i in range(2, len(arr)): if arr[i]-arr[i-1] != diff: return False return True arr = [ 3, 5, 1 ] print(checkAP(arr))