最初在乙個記事本上只有乙個字元 'a'。你每次可以對這個記事本進行兩種操作:
copy all (複製全部) : 你可以複製這個記事本中的所有字元(部分的複製是不允許的)。
paste (貼上) : 你可以貼上你上一次複製的字元。
給定乙個數字 n 。你需要使用最少的操作次數,在記事本中列印出恰好 n 個 'a'。輸出能夠列印出 n 個 'a' 的最少操作次數。
示例 1:
輸入: 3
輸出: 3
解釋:最初, 我們只有乙個字元 'a'。
第 1 步, 我們使用 copy all 操作。
第 2 步, 我們使用 paste 操作來獲得 'aa'。
第 3 步, 我們使用 paste 操作來獲得 'aaa'。
說明:n 的取值範圍是 [1, 1000] 。
class solution
int count(int n)
if(isprime(n))
return n;
int big = yinzi(n);
int times = n / big;
return count(big) + 1 + times - 1;
}int yinzi(int num)
return -1;
}bool isprime(int number)
};
只有兩個鍵的鍵盤
最初在乙個記事本上只有乙個字元 a 你每次可以對這個記事本進行兩種操作 copy all 複製全部 你可以複製這個記事本中的所有字元 部分的複製是不允許的 paste 貼上 你可以貼上你上一次複製的字元。給定乙個數字 n 你需要使用最少的操作次數,在記事本中列印出恰好 n 個 a 輸出能夠列印出 n...
只有兩個鍵的鍵盤 LeetCode
最初在乙個記事本上只有乙個字元 a 你每次可以對這個記事本進行兩種操作 copy all 複製全部 你可以複製這個記事本中的所有字元 部分的複製是不允許的 paste 貼上 你可以貼上你上一次複製的字元。給定乙個數字 n 你需要使用最少的操作次數,在記事本中列印出恰好 n 個 a 輸出能夠列印出 n...
每日leetcode 只有兩個鍵的鍵盤
最初在乙個記事本上只有乙個字元 a 你每次可以對這個記事本進行兩種操作 copy all 複製全部 你可以複製這個記事本中的所有字元 部分的複製是不允許的 paste 貼上 你可以貼上你上一次複製的字元。給定乙個數字 n 你需要使用最少的操作次數,在記事本中列印出恰好 n 個 a 輸出能夠列印出 n...