import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param n int整型
* @param m int整型
* @return int整型
*/
public int trailingZeroes (int n, int m) {
// write code here
int count = 0;
while (m-- > 0) {
n *= 2;
if (n % 10 == 0) {
count++;
n /= 10;
}
if (n % 10 != 5 && n % 10 != 0) {
break;
}
}
return count;
}
}
题目涵盖了以下知识点:
- 循环控制
- 条件语句
- 整数运算
代码的文字解释如下:
- 初始化变量 count 用于记录满足条件的数值的个数。
- while 循环会迭代 m 次,其中每次循环会执行以下操作:将 n 乘以 2,相当于将数值的二进制表示左移一位,这可能会导致数值末尾添加零。如果 n 末尾有零(即 n % 10 == 0),则增加 count 计数并将 n 除以 10,以去除末尾的零。如果 n 末尾不是 5 或 0,说明不会再有末尾的零,于是跳出循环。
- 返回 count,表示满足条件的数值的个数。

京公网安备 11010502036488号