Skip to content

Commit 9759e5a

Browse files
authored
Update Candy.java
1 parent 01347e7 commit 9759e5a

File tree

1 file changed

+19
-16
lines changed

1 file changed

+19
-16
lines changed

Hard/Candy.java

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,22 @@
11
class Solution {
2-
public int candy(int[] ratings) {
3-
int[] candies = new int[ratings.length];
4-
Arrays.fill(candies, 1);
5-
for (int i = 1; i < ratings.length; i++) {
6-
if (ratings[i] > ratings[i - 1]) {
7-
candies[i] = candies[i - 1] + 1;
8-
}
2+
public int candy(int[] ratings) {
3+
int n = ratings.length;
4+
int[] candies = new int[n];
5+
Arrays.fill(candies, 1);
6+
for (int i = 1; i < n; i++) {
7+
if (ratings[i] > ratings[i - 1]) {
8+
candies[i] = candies[i - 1] + 1;
9+
}
10+
}
11+
for (int i = n - 2; i >= 0; i--) {
12+
if (ratings[i] > ratings[i + 1]) {
13+
candies[i] = Math.max(candies[i], candies[i + 1] + 1);
14+
}
15+
}
16+
int totalCandies = 0;
17+
for (int i = 0; i < n; i++) {
18+
totalCandies += candies[i];
19+
}
20+
return totalCandies;
921
}
10-
int totalCandies = candies[candies.length - 1];
11-
for (int i = ratings.length - 2; i >= 0; i--) {
12-
if (ratings[i] > ratings[i + 1]) {
13-
candies[i] = Math.max(candies[i], candies[i + 1] + 1);
14-
}
15-
totalCandies += candies[i];
16-
}
17-
return totalCandies;
18-
}
1922
}

0 commit comments

Comments
 (0)