Skip to content

Commit 2047c03

Browse files
authored
Improved task 2106.
1 parent e62556f commit 2047c03

File tree

1 file changed

+7
-5
lines changed
  • src/main/java/g2101_2200/s2106_maximum_fruits_harvested_after_at_most_k_steps

1 file changed

+7
-5
lines changed

src/main/java/g2101_2200/s2106_maximum_fruits_harvested_after_at_most_k_steps/Solution.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,26 +6,28 @@
66
public class Solution {
77
public int maxTotalFruits(int[][] fruits, int startPos, int k) {
88
int res = 0;
9-
for (int left = 0, right = 0, sum = 0; right < fruits.length; right++) {
9+
int sum = 0;
10+
for (int left = 0, right = 0; right < fruits.length; right++) {
1011
sum += fruits[right][1];
1112
while (left <= right && !isValidRange(fruits[left][0], fruits[right][0], startPos, k)) {
1213
sum -= fruits[left++][1];
1314
}
1415
res = Math.max(sum, res);
1516
}
16-
1717
return res;
1818
}
1919

2020
private boolean isValidRange(int leftPos, int rightPos, int startPos, int k) {
21+
final boolean result;
2122
if (rightPos <= startPos) {
22-
return startPos - leftPos <= k;
23+
result = startPos - leftPos <= k;
2324
} else if (leftPos >= startPos) {
24-
return rightPos - startPos <= k;
25+
result = rightPos - startPos <= k;
2526
} else {
2627
int left = startPos - leftPos;
2728
int right = rightPos - startPos;
28-
return left <= right ? left * 2 + right <= k : right * 2 + left <= k;
29+
result = left <= right ? left * 2 + right <= k : right * 2 + left <= k;
2930
}
31+
return result;
3032
}
3133
}

0 commit comments

Comments
 (0)