1503. Last Moment Before All Ants Fall Out of a Plank
T: O(n)
S: O(1)
```java
class Solution {
public int getLastMoment(int n, int[] left, int[] right) {
int leftTime = 0;
for (int l : left) {
leftTime = Math.max(l, leftTime);
}
int rightTime = 0;
for (int r : right) {
rightTime = Math.max(n - r, rightTime);
}
return Math.max(leftTime, rightTime);
}
}
/**
T: O(n)
S: O(1)
實際上不管怎麼變方向...掉落的時間跟有沒有變方向無關
宏觀上來說…螞蟻碰撞後其實只是彼此”身份”對調,
原本有一隻往右走的和原本一隻往左走的, 碰撞後然後是有一隻往右走, 一隻往左走,
距離並沒有改變, 只是 “身份對調了” 而已
掉落時間最多就是 n
所以只要關心最多是不是需要花到 n time
ex:
n = 4
right = [1]
left = [3]
-> 那只要3時間, 因為出發點都比較前面
所以比較左右的出發點, 最大需要的時間就是答案
*/
```
```java
class Solution {
public int getLastMoment(int n, int[] left, int[] right) {
int result = 0;
for (int l : left) {
result = Math.max(l, result);
}
for (int r : right) {
result = Math.max(n - r, result);
}
return result;
}
}
```
Last updated
Was this helpful?