5
public int superEggDrop(int k, int n) {6
dp = new int[k + 1][n + 1];8
for (int i = 0; i <= k; i++) {9
Arrays.fill(dp[i], -1);15
public int solve(int e, int f) {16
if (f == 0 || f == 1) {30
int min = Integer.MAX_VALUE;33
int k = low + (high - low) / 2;38
if (dp[e - 1][k - 1] != -1) {41
l = solve(e - 1, k - 1);44
if (dp[e][f - k] != -1) {56
int temp = Math.max(l, r) + 1;57
min = Math.min(min, temp);60
return dp[e][f] = min;64
// -------------------------TLE--------------------------67
// public int superEggDrop(int k, int n) {68
// int [][]dp=new int[k+1][n+1];70
// for(int i=1;i<=k;i++){71
// for(int j=1;j<=n;j++){77
// int min=Integer.MAX_VALUE;79
// for(int m=j-1,p=0;m>=0;m--,p++){80
// int max=Math.max(dp[i][m],dp[i-1][p]);82
// min=Math.min(min,max);