Skip to content

Commit 52b83db

Browse files
committed
add 837 new 21 game
1 parent d0e3563 commit 52b83db

File tree

2 files changed

+33
-1
lines changed

2 files changed

+33
-1
lines changed

496-next-greater-element-I.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,5 @@ const nextGreaterElement = function(findNums, nums) {
2121
};
2222

2323
console.log(nextGreaterElement([4,1,2], [1,3,4,2]))
24-
console.log(nextGreaterElement([2,4], [1,2,3,4]))
24+
console.log(nextGreaterElement([2,4], [1,2,3,4]))
25+
console.log(nextGreaterElement([1,2,3], [9, 8, 7, 3, 2, 1, 6]))

837-new-21-game.js

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
/**
2+
* @param {number} N
3+
* @param {number} K
4+
* @param {number} W
5+
* @return {number}
6+
*/
7+
const new21Game = function(N, K, W) {
8+
if (K === 0 || N >= K + W) {
9+
return 1
10+
}
11+
const dp = []
12+
let Wsum = 1
13+
let res = 0
14+
dp[0] = 1
15+
for (let i = 1; i <= N; i++) {
16+
dp[i] = Wsum / W
17+
if (i < K) {
18+
Wsum += dp[i]
19+
} else {
20+
res += dp[i]
21+
}
22+
if (i - W >= 0) {
23+
Wsum -= dp[i - W]
24+
}
25+
}
26+
return res
27+
};
28+
29+
console.log(new21Game(6,1,10))
30+
console.log(new21Game(10,1,10))
31+
console.log(new21Game(21,17,10))

0 commit comments

Comments
 (0)