fix: 2 more challenges
This commit is contained in:
parent
fb5f689af3
commit
8292c346aa
55
EggDropping/EggDropping.java
Normal file
55
EggDropping/EggDropping.java
Normal file
@ -0,0 +1,55 @@
|
||||
import java.util.Scanner;
|
||||
|
||||
/**
|
||||
* EggDropping
|
||||
* You are given k identical eggs and you have access to a building with n
|
||||
* floors labeled from 1 to n.
|
||||
*
|
||||
* You know that there exists a floor f where 0 <= f <= n such that any egg
|
||||
* dropped at a floor higher than f will break,
|
||||
* and any egg dropped at or below floor f will not break.
|
||||
*
|
||||
* Each move, you may take an unbroken egg and drop it from any floor x (where 1
|
||||
* <= x <= n).
|
||||
* If the egg breaks, you can no longer use it. However, if the egg does not
|
||||
* break, you may reuse it in future moves.
|
||||
*
|
||||
* Return the minimum number of moves that you need to determine with certainty
|
||||
* what the value of f is.
|
||||
*
|
||||
* Example 1:
|
||||
*
|
||||
* Input: k = 1, n = 2
|
||||
* Output: 2
|
||||
* Explanation:
|
||||
* Drop the egg from floor 1. If it breaks, we know that f = 0.
|
||||
* Otherwise, drop the egg from floor 2. If it breaks, we know that f = 1.
|
||||
* If it does not break, then we know f = 2.
|
||||
* Hence, we need at minimum 2 moves to determine with certainty what the value
|
||||
* of f is.
|
||||
*
|
||||
*/
|
||||
public class EggDropping {
|
||||
public static void main(String[] args) {
|
||||
Scanner scanner = new Scanner(System.in);
|
||||
|
||||
int a = scanner.nextInt();
|
||||
int b = scanner.nextInt();
|
||||
scanner.close();
|
||||
System.out.println(minMoves(a, b));
|
||||
}
|
||||
|
||||
private static int minMoves(int k, int n) {
|
||||
// if n > f ==> eggs break
|
||||
// if n < f ==> eggs are good
|
||||
int min = 0;
|
||||
int[][] dp = new int[n + 1][k + 1];
|
||||
while (dp[min][k] < n) {
|
||||
min++;
|
||||
for (int i = 1; i <= k; i++) {
|
||||
dp[min][i] = dp[min - 1][i - 1] + dp[min - 1][i] + 1;
|
||||
}
|
||||
}
|
||||
return min;
|
||||
}
|
||||
}
|
||||
3
GamePlatform/.idea/.gitignore
vendored
Normal file
3
GamePlatform/.idea/.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
# Default ignored files
|
||||
/shelf/
|
||||
/workspace.xml
|
||||
6
GamePlatform/.idea/misc.xml
Normal file
6
GamePlatform/.idea/misc.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_23" default="true" project-jdk-name="openjdk-23" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/out" />
|
||||
</component>
|
||||
</project>
|
||||
8
GamePlatform/.idea/modules.xml
Normal file
8
GamePlatform/.idea/modules.xml
Normal file
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/GamePlatform.iml" filepath="$PROJECT_DIR$/GamePlatform.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
||||
6
GamePlatform/.idea/vcs.xml
Normal file
6
GamePlatform/.idea/vcs.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
|
||||
</component>
|
||||
</project>
|
||||
25
GamePlatform/FinalSpeed.java
Normal file
25
GamePlatform/FinalSpeed.java
Normal file
@ -0,0 +1,25 @@
|
||||
/**
|
||||
* FinalSpeed
|
||||
*/
|
||||
public class FinalSpeed {
|
||||
|
||||
public static double calculateFinalSpeed(double initialSpeed, int[] inclinations) {
|
||||
/*
|
||||
* double finalSpeed = 0;
|
||||
* for (int speed : inclinations) {
|
||||
* double temp = initialSpeed;
|
||||
* initialSpeed = (-1 * speed) + temp;
|
||||
* finalSpeed = initialSpeed;
|
||||
* }
|
||||
*/
|
||||
double finalSpeed = initialSpeed;
|
||||
for (int speed : inclinations) {
|
||||
finalSpeed -= speed;
|
||||
}
|
||||
return finalSpeed;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
System.out.println(calculateFinalSpeed(60.0, new int[] { 0, 30, 0, -45, 0 }));
|
||||
}
|
||||
}
|
||||
11
GamePlatform/GamePlatform.iml
Normal file
11
GamePlatform/GamePlatform.iml
Normal file
@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
||||
Loading…
Reference in New Issue
Block a user