在 JavaScript 中计算具有所有唯一数字的 n 位数字
问题
我们需要编写一个JavaScript函数,它接受一个数字,比如num,作为唯一的参数。该函数应计算所有具有num位数且所有位数都是唯一的此类数字。
例如,如果函数的输入是-
const num = 1;
那么输出应该是-
const output = 10;
输出说明:
数字0,1,2,3,4,5,6,7,8,9都有1位数字并且都是唯一的。
示例
此代码将是-
const num = 1; const uniqueDigits = (num = 1) => { const dp = [1, 10]; const sum = [1, 11]; for (let i = 2; i <= num; i++) { dp[i] = sum[i - 1] + (10 - i) * (dp[i - 1]); sum[i] = sum[i - 1] + dp[i]; }; return dp[num]; }; console.log(uniqueDigits(num)); console.log(uniqueDigits(2)); console.log(uniqueDigits(3));
代码说明:
我们在这里使用动态规划来跟踪所需的数字。
输出结果
控制台中的输出将是-
10 91 739