题解 | #快速生长的草#

快速生长的草

https://www.nowcoder.com/practice/de1d9ec0d53d4202ae83dc3b25a63166

考察的知识点:位运算;

解答方法分析:

  1. 定义一个变量count,用来记录尾随零的个数,初始值为0。
  2. 使用循环逐渐翻倍草的数量,重复m次。每次翻倍后,判断当前数量是否能被10整除(即末尾是否有0),如果能整除,则将count加1,并将当前数量除以10。
  3. 循环结束后,count即为尾随零的个数。

所用编程语言:C++;

完整编程代码:↓

class Solution {
  public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param n int整型
     * @param m int整型
     * @return int整型
     */
    int trailingZeroes(int n, int m) {
        int count = 0;
        for (int i = 0; i <= m; i++) {
            if (n % 10 == 0) {
                count++;
                n /= 10;
            }
            n *= 2;
            if (n % 10 != 5 && n % 10 != 0)
                break;
        }
        return count;
    }
};

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-15 17:46
暑期就挂了,秋招还有机会吗
大聪明777:研发提前批,14号刚开的,官网上面的配图上有写。提前批没过的话,秋招还可以投,不过前面的笔试/面试记录会被保留,供秋招参考
26届校招投递进展
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务