650. 2 Keys Keyboard
2017-08-01 20:33
141 查看
Initially on a notepad only one character ‘A’ is present. You can perform two operations on this notepad for each step:
Copy All: You can copy all the characters present on the notepad (partial copy is not allowed).
Paste: You can paste the characters which are copied last time.
Given a number n. You have to get exactly n ‘A’ on the notepad by performing the minimum number of steps permitted. Output the minimum number of steps to get n ‘A’.
Example 1:
Note:
The n will be in the range [1, 1000].
思路:如果知道了 i 的结果,那么2 * i的步骤只需在 i的结果上加上2即可,一次复制,一次粘贴。同理3 * i的结果为一次复制,2次粘贴;
Copy All: You can copy all the characters present on the notepad (partial copy is not allowed).
Paste: You can paste the characters which are copied last time.
Given a number n. You have to get exactly n ‘A’ on the notepad by performing the minimum number of steps permitted. Output the minimum number of steps to get n ‘A’.
Example 1:
Input: 3 Output: 3 Explanation: Intitally, we have one character 'A'. In step 1, we use Copy All operation. In step 2, we use Paste operation to get 'AA'. In step 3, we use Paste operation to get 'AAA'.
Note:
The n will be in the range [1, 1000].
思路:如果知道了 i 的结果,那么2 * i的步骤只需在 i的结果上加上2即可,一次复制,一次粘贴。同理3 * i的结果为一次复制,2次粘贴;
int minSteps(int n) { vector<int> dp(n + 1, INT_MAX); dp[1] = 0; for (int i = 1; i <= n; i++){ int k = 2; for (int j = i * 2; j <= n; j += i){ dp[j] = min(dp[j], dp[i] + k); k++; } } return dp ; }
相关文章推荐
- Leetcode 650. 2 Keys Keyboard 2指键盘 解题报告
- 650. 2 Keys Keyboard
- 650. 2 Keys Keyboard
- 【精】leetcode - 650. 2 Keys Keyboard 【动态规划 + 质数 & 非质数 + 简洁表达】
- LeetCode 650. 2 Keys Keyboard--动态规划
- Leetcode 650. 2 Keys Keyboard
- [LeetCode] 650. 2 Keys Keyboard
- 650. 2 Keys Keyboard
- Leetcode 650. 2 Keys Keyboard
- [Leetcode] 650. 2 Keys Keyboard 解题报告
- leetcode 650. 2 Keys Keyboard(dp)
- 动态规划-650. 2 Keys Keyboard
- leetcode 650. 2 Keys Keyboard 最小复制粘贴次数 + 深度优先遍历DFS
- 650. 2 Keys Keyboard【Medium】可能是数学题
- [LeetCode] 650. 2 Keys Keyboard 两键的键盘
- leetcode 650. 2 Keys Keyboard
- [LeetCode] 650. 2 Keys Keyboard
- LeetCode 650. 2 Keys Keyboard
- [LeetCode] 650. 2 Keys Keyboard
- LeetCode650. 2 Keys Keyboard