File tree 1 file changed +19
-16
lines changed
1 file changed +19
-16
lines changed Original file line number Diff line number Diff line change 1
1
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 ;
9
21
}
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
- }
19
22
}
You can’t perform that action at this time.
0 commit comments