File tree 1 file changed +12
-13
lines changed
1 file changed +12
-13
lines changed Original file line number Diff line number Diff line change 1
1
class Solution {
2
2
public char slowestKey (int [] releaseTimes , String keysPressed ) {
3
- int maxReleaseTime = 0 ;
4
- int maxReleaseTimeIdx = 0 ;
5
- for (int idx = 0 ; idx < releaseTimes .length ; idx ++) {
6
- int currentIdx = keysPressed .charAt (idx ) - 'a' ;
7
- int currReleaseTime = releaseTimes [idx ] - (idx == 0 ? 0 : releaseTimes [idx - 1 ]);
8
- if (currReleaseTime >= maxReleaseTime ) {
9
- if (currReleaseTime > maxReleaseTime ) {
10
- maxReleaseTimeIdx = currentIdx ;
11
- } else if (currentIdx > maxReleaseTimeIdx ) {
12
- maxReleaseTimeIdx = currentIdx ;
13
- }
14
- maxReleaseTime = currReleaseTime ;
3
+ int startTime = 0 ;
4
+ int maxPressedTime = 0 ;
5
+ char keyWithLongestTime = keysPressed .charAt (0 );
6
+ for (int i = 0 ; i < releaseTimes .length ; i ++) {
7
+ int totalTime = releaseTimes [i ] - startTime ;
8
+ if (maxPressedTime < totalTime ) {
9
+ keyWithLongestTime = keysPressed .charAt (i );
10
+ maxPressedTime = totalTime ;
11
+ } else if (maxPressedTime == totalTime && keyWithLongestTime < keysPressed .charAt (i )) {
12
+ keyWithLongestTime = keysPressed .charAt (i );
15
13
}
14
+ startTime = releaseTimes [i ];
16
15
}
17
- return ( char ) ( 97 + maxReleaseTimeIdx ) ;
16
+ return keyWithLongestTime ;
18
17
}
19
18
}
You can’t perform that action at this time.
0 commit comments