Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 5661b60

Browse files
authored
Create 2591-distribute-money-to-maximum-children.js
1 parent ca16016 commit 5661b60

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
/**
2+
* @param {number} money
3+
* @param {number} children
4+
* @return {number}
5+
*/
6+
const distMoney = function(money, children) {
7+
let m = money, n = children
8+
if(m < n) return -1
9+
let res = 0
10+
for(let num = 1; num <= n && num * 8 <= m; num++) {
11+
if(valid(num)) res = num
12+
}
13+
14+
return res
15+
16+
function valid(num) {
17+
if(m < num * 8) return false
18+
let remain = m - num * 8
19+
let slots = n - num
20+
if(slots === 0 && remain) return false
21+
if(slots > remain) return false
22+
remain = remain - slots
23+
if(remain === 3 && slots === 1) return false
24+
return true
25+
}
26+
27+
};

0 commit comments

Comments
 (0)