-
Notifications
You must be signed in to change notification settings - Fork 63
Expand file tree
/
Copy pathBuild a pile of Cubes
More file actions
31 lines (23 loc) · 904 Bytes
/
Build a pile of Cubes
File metadata and controls
31 lines (23 loc) · 904 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/*
Description:
Your task is to construct a building which will be a pile of n cubes. The cube at the bottom will have a volume of n^3, the cube above will have volume of (n-1)^3 and so on until the top which will have a volume of 1^3.
You are given the total volume m of the building. Being given m can you find the number n of cubes you will have to build?
The parameter of the function findNb (find_nb, find-nb, findNb) will be an integer m and you have to return the integer n such as n^3 + (n-1)^3 + ... + 1^3 = m if such a n exists or -1 if there is no such n.
Examples:
findNb(1071225) --> 45
findNb(91716553919377) --> -1
mov rdi, 1071225
call find_nb ; rax <-- 45
mov rdi, 91716553919377
call find_nb ; rax <-- -1
*/
function findNb(m) {
let i=1;
let count=0;
while (m>0){
m-=Math.pow(i,3)
i++
count++
}
return (m === 0) ? count : -1;
}