624 - Maximum Distance in Arrays

 JAVA

  • class Solution {
        public int maxDistance(List<List<Integer>> arrays) {
            int ans = 0;
            int mi = arrays.get(0).get(0);
            int mx = arrays.get(0).get(arrays.get(0).size() - 1);
            for (int i = 1; i < arrays.size(); ++i) {
                var arr = arrays.get(i);
                int a = Math.abs(arr.get(0) - mx);
                int b = Math.abs(arr.get(arr.size() - 1) - mi);
                ans = Math.max(ans, Math.max(a, b));
                mi = Math.min(mi, arr.get(0));
                mx = Math.max(mx, arr.get(arr.size() - 1));
            }
            return ans;
        }
    }

C++

  • class Solution {
    public:
        int maxDistance(vector<vector<int>>& arrays) {
            int ans = 0;
            int mi = arrays[0][0], mx = arrays[0][arrays[0].size() - 1];
            for (int i = 1; i < arrays.size(); ++i) {
                auto& arr = arrays[i];
                int a = abs(arr[0] - mx), b = abs(arr[arr.size() - 1] - mi);
                ans = max({ans, a, b});
                mi = min(mi, arr[0]);
                mx = max(mx, arr[arr.size() - 1]);
            }
            return ans;
        }
    };

Comments