2 JavaScript 中的键盘问题

假设以下情况 -
最初,记事本上只有一个字符“A”。我们可以在这个记事本上为每个步骤执行两个操作 -
全部复制 - 我们可以复制记事本上的所有字符(不允许部分复制)。
粘贴 - 我们可以粘贴上次复制的字符。
我们需要编写一个JavaScript函数它接受一个数字,我们将其称为 num 作为唯一的参数。我们的函数需要计算并返回打印“A”次数所需的最小步骤数(复制全部或粘贴)。
例如 -
如果输入数字是-
const num = 3;
那么输出应该是 -
const output = 3;
因为,步骤是 -
全部复制(结果:'A')
全部粘贴(结果:'AA')
全部粘贴(结果:'AAA')
示例 h2>
其代码为 -
现场演示
const num = 3;
const minimumSteps = (num = 1) => {
let [curr, copy, steps] = [1, 0, 0];
while(curr != num){
if((copy < curr) && ((num - curr) % curr) == 0) {
copy = curr;
}else{
curr += copy;
};
steps += 1;
};
return steps;
};
console.log(minimumSteps(num));输出
控制台中的输出将是 -
3
javascript