首页 > 其他分享 >Leetcod 1342.将数字变成0的操作次数

Leetcod 1342.将数字变成0的操作次数

时间:2024-07-11 09:30:01浏览次数:18  
标签:count 得到 步骤 1342 除以 偶数 次数 num Leetcod

题目要求:

给你一个非负整数 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

题目代码:

int numberOfSteps(int num) {
    if(num == 0)
        return 0;
    int count = 0;
    while(num)
    {
        if(num % 2 == 0)
        {
            num /= 2;
            count++;
        }else{
            num -= 1;
            count++;
        }
    }
    return count;
}

好了,各位看官,这就是我的代码了,今天的题比较简单,我就不写步骤,大家如果觉得好的话,就请给个免费的赞吧,谢谢大家了^ _ ^

标签:count,得到,步骤,1342,除以,偶数,次数,num,Leetcod
From: https://blog.csdn.net/m0_54244065/article/details/140342171

相关文章

  • LeetCode --- 2103. Rings and Rods 解题报告
    Question:Thereare n ringsandeachringiseitherred,green,orblue.Theringsaredistributed acrosstenrods labeledfrom 0 to 9.Youaregivenastring rings oflength 2n thatdescribesthe n ringsthatareplacedontotherods.Everyt......
  • 「字符串」Manacher算法(马拉车)/ LeetCode 05(C++)
    给你一个字符串 s,找到 s 中最长的回文子串。示例1:输入:s="babad"输出:"bab"解释:"aba"同样是符合题意的答案。示例2:输入:s="cbbd"输出:"bb"思路我们回想中心扩散法:某字符处的中心扩散完毕后,其实已经将它身前身后的字符段落都搜索过了,那么如果我们搜索其后的字......
  • leetcode||707.双向链表
    1.思路:设置虚拟头节点和虚拟尾节点2.为了提高查询效率,在根据索引查找节点的值时注意头尾虚拟节点的选择。java代码publicclassDoubleList707{//1.双向链表的结构privateclassListNode{intvalue;ListNodepre;ListNodenext;......
  • 洛谷CF1342B Binary Period题解
    原题解和原题。这道题比较水。这道题分两种情况,分别为$t$由一种字符构成和由两种字符构成两种情况。$t$只有$0$或$1$。此时的$k$就是$1$,直接输出$t$就是最好的选择。$t$既有$0$又有$1$。此时的$k$为$2$,字符串由01或10构成。我们设$a_i$为字符串......
  • leetcode 704.二分查找
    重点区分:while(left<right) 和 while(left<=right)right=middle和right=middle-1当处于左闭右闭区间内时,while(left<=right)当处于左闭右开区间时,while(left<right)right=middle和right=middle-1,以此类推1.原理(来源代码随想录)(1)第一种情况(2)第二......
  • 菜鸟的Leetcode(02)
    系列文章目录第1章 求和第2章 回文文章目录系列文章目录前言一、题目二、知识点三、解题步骤1.思路2.实现3.演示4.其他总结一、题目给你一个整数x,如果x是一个回文整数,返回true;否则,返回false。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数......
  • LeetCode 面试题 17.05. 字母与数字
    面试题17.05.字母与数字给定一个放有字母和数字的数组,找到最长的子数组,且包含的字母和数字的个数相同。返回该子数组,若存在多个最长子数组,返回左端点下标值最小的子数组。若不存在这样的数组,返回一个空数组。示例1:输入:["A","1","B","C","D","2","3","4","E","5&q......
  • LeetCode 1546. 和为目标值且不重叠的非空子数组的最大数目
    1546.和为目标值且不重叠的非空子数组的最大数目给你一个数组 nums 和一个整数 target 。请你返回 非空不重叠 子数组的最大数目,且每个子数组中数字和都为 target 。示例1:输入:nums=[1,1,1,1,1],target=2输出:2解释:总共有2个不重叠子数组(加粗数字表示)[1,......
  • 代码随想录-DAY⑤-哈希表——leetcode 242 | 349 | 202
    242思路先遍历字符串1,记录每个字符的个数,然后遍历字符串2,挨个减去字符个数,出现小于零的个数说明字符总数不重合。时间复杂度:O(n)空间复杂度:O(1)代码classSolution{public:boolisAnagram(strings,stringt){if(s.length()!=t.length()){......
  • LeetCode【跳跃游戏】
    55.跳跃游戏给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false 。示例 1:输入:nums=[2,3,1,1,4]输出:true解释:可以先跳1步,从下......