Skip to content

Commit acf2c2b

Browse files
solves #2383: Minimum Hours of Training to Win a Competition in java
1 parent 4dd8f75 commit acf2c2b

File tree

2 files changed

+25
-1
lines changed

2 files changed

+25
-1
lines changed

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -761,7 +761,7 @@
761761
| 2367 | [Number of Arithmetic Triplets](https://leetcode.com/problems/number-of-arithmetic-triplets) | [![Java](assets/java.png)](src/NumberOfArithmeticTriplets.java) | |
762762
| 2373 | [Largest Local Values in a Matrix](https://leetcode.com/problems/largest-local-values-in-a-matrix) | [![Java](assets/java.png)](src/LargestLocalValuesInAMatrix.java) | |
763763
| 2379 | [Minimum Recolors to Get K Consecutive Black Blocks](https://leetcode.com/problems/minimum-recolors-to-get-k-consecutive-black-blocks) | [![Java](assets/java.png)](src/MinimumRecolorsToGetKConsecutiveBlackBlocks.java) | |
764-
| 2383 | [Minimum Hours of Training to Win a Competition](https://leetcode.com/problems/minimum-hours-of-training-to-win-a-competition) | | |
764+
| 2383 | [Minimum Hours of Training to Win a Competition](https://leetcode.com/problems/minimum-hours-of-training-to-win-a-competition) | [![Java](assets/java.png)](src/MinimumHoursOfTrainingToWinACompetition.java) | |
765765
| 2389 | [Longest Subsequence With Limited Sum](https://leetcode.com/problems/longest-subsequence-with-limited-sum) | | |
766766
| 2395 | [Find Subarrays With Equal Sum](https://leetcode.com/problems/find-subarrays-with-equal-sum) | | |
767767
| 2399 | [Check Distances Between Same Letters](https://leetcode.com/problems/check-distances-between-same-letters) | | |
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
// https://leetcode.com/problems/minimum-hours-of-training-to-win-a-competition
2+
// T: O(N)
3+
// S: O(1)
4+
5+
public class MinimumHoursOfTrainingToWinACompetition {
6+
public static int minNumberOfHours(int initialEnergy, int initialExperience, int[] energy, int[] experience) {
7+
int trainingRequired = 0;
8+
9+
for (int index = 0 ; index < energy.length ; index++) {
10+
if (energy[index] >= initialEnergy) {
11+
trainingRequired += energy[index] - initialEnergy + 1;
12+
initialEnergy += energy[index] - initialEnergy + 1;
13+
}
14+
if (experience[index] >= initialExperience) {
15+
trainingRequired += experience[index] - initialExperience + 1;
16+
initialExperience += experience[index] - initialExperience + 1;
17+
}
18+
initialEnergy -= energy[index];
19+
initialExperience += experience[index];
20+
}
21+
22+
return trainingRequired;
23+
}
24+
}

0 commit comments

Comments
 (0)