鄂州做网站报价,怎么在服务器上面建设网站,12306铁路网站开发语言,滨州哪里有做网站的650. 只有两个键的键盘
最初记事本上只有一个字符 ‘A’ 。你每次可以对这个记事本进行两种操作#xff1a;
Copy All#xff08;复制全部#xff09;#xff1a;复制这个记事本中的所有字符#xff08;不允许仅复制部分字符#xff09;。Paste#xff08;粘贴#x…650. 只有两个键的键盘
最初记事本上只有一个字符 ‘A’ 。你每次可以对这个记事本进行两种操作
Copy All复制全部复制这个记事本中的所有字符不允许仅复制部分字符。Paste粘贴粘贴 上一次 复制的字符。 给你一个数字 n 你需要使用最少的操作次数在记事本上输出 恰好 n 个 ‘A’ 。返回能够打印出 n 个 ‘A’ 的最少操作次数。
示例 1输入3
输出3
解释
最初, 只有一个字符 A。
第 1 步, 使用 Copy All 操作。
第 2 步, 使用 Paste 操作来获得 AA。
第 3 步, 使用 Paste 操作来获得 AAA。
示例 2输入n 1
输出0解题思路
每次将连续的字符串A分解如果是二的倍数就是最优的因为只需要复制粘贴两步如果是3的倍数就需要复制粘贴粘贴三步。因此我们需要将字符串分解成为尽量大的几部分所以我们可以从234…一直查找当前字符串能被分割为几块
代码
class Solution {public int minSteps(int n) {int res0;while(n1){for(int i2;in;i)if(n%i0){n/i;resi;break;}}return res;}
}