Digits Product
Given an integer product
, find the smallest positive (i.e. greater than 0
) integer the product of whose digits is equal to product
. If there is no such integer, return -1
instead.
Example
For
product = 12
, the output should bedigits_product(product) = 26
For
product = 19
, the output should bedigits_product(product) = -1
Input/Output
[input] integer product
Guaranteed constraints:
0 ≤ product ≤ 600
.
Solution
py
def digits_product(product):
# #smallest possible number for product 400 is 3558
for i in range(1, 3559):
smallest = 1
for char in str(i):
smallest *= int(char)
if(smallest == product):
return i
return -1
print(digits_product(600))
js
// def digits_product(product):
// # #smallest possible number for product 400 is 3558
// for i in range(1, 3559):
// smallest = 1
// for char in str(i):
// smallest *= int(char)
// if(smallest == product):
// return i
// return -1
// print(digits_product(600))
function digitsProduct(product) {
// smallest possible number for product 400 is 3558
for (let i = 1; i < 3559; i++) {
let smallest = 1;
for (let char of i.toString()) {
smallest *= parseInt(char);
}
if (smallest === product) {
return i;
}
}
return -1;
}
console.log(digitsProduct(600));