力扣 1342. 將數字變成 0 的操作次數 C++
給你一個非負整數 num ,請你返回將它變成 0 所需要的步數。 如果當前數字是偶數,你需要把它除以 2 ;否則,減去 1 。
示例 1:
輸入:num = 14
輸出:6
解釋:
步驟 1) 14 是偶數,除以 2 得到 7 。
步驟 2) 7 是奇數,減 1 得到 6 。
步驟 3) 6 是偶數,除以 2 得到 3 。
步驟 4) 3 是奇數,減 1 得到 2 。
步驟 5) 2 是偶數,除以 2 得到 1 。
步驟 6) 1 是奇數,減 1 得到 0 。
示例 2:
輸入:num = 8
輸出:4
解釋:
步驟 1) 8 是偶數,除以 2 得到 4 。
步驟 2) 4 是偶數,除以 2 得到 2 。
步驟 3) 2 是偶數,除以 2 得到 1 。
步驟 4) 1 是奇數,減 1 得到 0 。
示例 3:
輸入:num = 123
輸出:12
提示:
0 <= num <= 10^6
C++
class Solution {
public:
int numberOfSteps (int num) {
int res = 0;
while(num){
(num % 2 == 0) ? num /= 2 : num -= 1;
res++;
}
return res;
}
};
相關文章
- 【刷力扣】1342. 將數字變成 0 的操作次數力扣
- LeetCode 力扣 羅馬數字轉整數LeetCode力扣
- leetcode力扣136.只出現一次的數字LeetCode力扣
- 力扣-738. 單調遞增的數字力扣
- Python中如何將字串變成數字?Python字串
- 力扣 - 劍指 Offer 39. 陣列中出現次數超過一半的數字力扣陣列
- C++/C:數字轉成字串, 字串轉成數字C++字串
- 【c語言】將正數變成對應的負數,將負數變成對應的正數C語言
- excel表格數字怎麼變成正常數字 數字太長後面變成000Excel
- 力扣 根據數字二進位制下1的數目排序力扣排序
- 力扣448. 找到所有陣列中消失的數字力扣陣列
- 力扣.16 最接近的三數之和力扣
- 力扣1356.根據數字二進位制下1的數目排序力扣排序
- 力扣 - 劍指 Offer 67. 把字串轉換成整數力扣字串
- 力扣760. 找出變位對映 C++力扣C++
- 使用 Haskell 將十進位制數字轉成羅馬數字Haskell
- c++成員變數初始化C++變數
- Python如何將數字變成帶逗號的千分位Python
- 力扣-1705. 吃蘋果的最大數目力扣蘋果
- 力扣 204. 計數質數(每日一題)力扣每日一題
- 將數字轉換成單詞形式
- 力扣題解1-兩數之和力扣
- 力扣題解2-兩數相加力扣
- C++將數字轉為字串,並拼接C++字串
- 【力扣】組合總數(另一種整數溢位)力扣
- 最少操作次數
- C++教程-----C++變數型別和變數的定義C++變數型別
- 力扣#43 字串相乘(C++)力扣字串C++
- c++中的變數C++變數
- C++智慧指標作為成員變數C++指標變數
- Matlab tabulate統計數字出現的次數,如果陣列中出現0Matlab陣列
- 演算法--力扣2. 兩數相加演算法力扣
- C++類的靜態成員變數初始化C++變數
- c++中的變數型別_C ++中的變數C++變數型別
- 成員變數變數
- Java中變數之區域性變數、本類成員變數、父類成員變數的訪問方法Java變數
- 統計位數為偶數的數字(C++)C++
- 成員變數、全域性變數、例項變數、類變數、靜態變數和區域性變數的區別變數