知识点
数学
思路
计算数字2和数字5的个数,翻倍等于2的个数+1;
后缀零的个数等于2和5个数较小的一个。
时间复杂度
AC Code(C++)
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int整型 * @param m int整型 * @return int整型 */ int trailingZeroes(int n, int m) { int c2 = m, c5 = 0; while (n % 5 == 0) { n /= 5; c5 += 1; } while (n % 2 == 0) { n /= 2; c2 += 1; } return min(c2, c5); } };