Champagne Tower LeetCode solution in Java

1
// Champagne Tower
2
// Leetcode: https://leetcode.com/problems/champagne-tower/
3

4
class Solution {
5
public double champagneTower(int poured, int query_row, int query_glass) {
6
if (poured == 0) return 0;
7
double[] memo = new double[101];
8
memo[0] = poured;
9
for (int i = 0; i < 100; i++) {
10
for (int j = i; j >= 0; j--) {
11
if (memo[j] > 1) {
12
if (i == query_row && j == query_glass) return 1;
13
double val = (memo[j] - 1) / 2;
14
memo[j + 1] += val;
15
memo[j] = val;
16
} else {
17
if (i == query_row && j == query_glass) return memo[query_glass];
18
memo[j + 1] += 0;
19
memo[j] = 0;
20
}
21
}
22
}
23
return memo[query_glass];
24
}
25
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0