日野弥生:勉強しよう

LeetCode 1342 - 将数字变成 0 的操作次数

发表于2025年02月01日

#位运算 #数学

利用while循环完全按照题目要求写即可。注意:当num==1时,count会多自增一次,所以,结果需要减1

class Solution:
    def numberOfSteps(self, num: int) -> int:
        # 如果数字为0,直接返回
        if num == 0:
            return num
        count = 0
        while num != 0 :
            if num % 2 == 0 :
                count = count + 1
            else :
                count = count + 2
            # 这是向下取整操作
            num = num // 2
        return count - 1

        

フラッシュタブ:LeetCode

题目链接:https://leetcode.cn/problems/number-of-steps-to-reduce-a-number-to-zero/

上一篇

LeetCode LCR 136 - 删除链表的节点

下一篇

LeetCode 1672 - 最富有客户的资产总量