Minimum Average Difference LeetCode solution in Java
1class Solution {2public int minimumAverageDifference(int[] nums) {3if (nums.length == 1) {4return 0;5}6int idx = -1;7long min = Integer.MAX_VALUE;8long suml = nums[0];9long sumr = 0;10for (int i = 1; i < nums.length; i++) {11sumr += nums[i];12}13int i = 1;14int calc = 0;15int left = 1;16int right = nums.length - left;17long[] arr = new long[nums.length];18while (i < nums.length) {19long diff = Math.abs((suml / left) - (sumr / right));20arr[calc] = diff;21if (diff < min) {22min = diff;23idx = calc;24}25suml += nums[i];26sumr -= nums[i];27left++;28right--;29calc++;30i++;31}32arr[calc] = suml / nums.length;33if (arr[calc] < min) {34min = arr[calc];35idx = nums.length - 1;36}37// for(i = 0; i < nums.length; i++){38// System.out.println(arr[i]);39// }40return (int) idx;41}42}