JavaScript 中计算所有数字都唯一的 n 位数
问题
我们需要编写一个 JavaScript 函数,它以一个数字(例如 num)作为唯一的参数。该函数应该计算所有具有 num 位数且所有数字都唯一的数字。
例如,如果函数的输入为 -
const num = 1;
则输出应为 -
const output = 10;
输出说明
数字 0、1、2、3、4、5、6、7、8、9 都是一位数,并且所有数字都是唯一的。
示例
代码如下 -
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
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP