# 0624. Maximum Distance in Arrays

<https://leetcode.com/problems/maximum-distance-in-arrays>

## Description

You are given `m` `arrays`, where each array is sorted in **ascending order**.

You can pick up two integers from two different arrays (each array picks one) and calculate the distance. We define the distance between two integers `a` and `b` to be their absolute difference `|a - b|`.

Return *the maximum distance*.

**Example 1:**

```
**Input:** arrays = [[1,2,3],[4,5],[1,2,3]]
**Output:** 4
**Explanation:** One way to reach the maximum distance 4 is to pick 1 in the first or third array and pick 5 in the second array.
```

**Example 2:**

```
**Input:** arrays = [[1],[1]]
**Output:** 0
```

**Example 3:**

```
**Input:** arrays = [[1],[2]]
**Output:** 1
```

**Example 4:**

```
**Input:** arrays = [[1,4],[0,5]]
**Output:** 4
```

**Constraints:**

* `m == arrays.length`
* `2 <= m <= 105`
* `1 <= arrays[i].length <= 500`
* `-104 <= arrays[i][j] <= 104`
* `arrays[i]` is sorted in **ascending order**.
* There will be at most `105` integers in all the arrays.

## ac

```java
class Solution {
    public int maxDistance(List<List<Integer>> arrays) {
        int min = arrays.get(0).get(0), max = arrays.get(0).get(arrays.get(0).size() - 1), res = 0;

        for (int i = 1; i < arrays.size(); i++) {
            res = Math.max(res, Math.abs(arrays.get(i).get(0) - max));
            res = Math.max(res, Math.abs(arrays.get(i).get(arrays.get(i).size() - 1) - min));
            min = Math.min(min, arrays.get(i).get(0));
            max = Math.max(max, arrays.get(i).get(arrays.get(i).size() - 1));
        }

        return res;
    }
}

/*
1) compare head and tail of each list, get min/max; 2) avoid min/max from the same list, compare with previous first, then update
*/
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://jaywin.gitbook.io/leetcode/solutions/0624-maximum-distance-in-arrays.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
