本篇博客会讲解力扣“1295. 统计位数为偶数的数字”的解题思路,这是题目链接。
统计位数是偶数的数据个数,关键在于如何统计一个整数的位数。方法是:对于一个整数n,每次/10,都会缩小一位,所以一直进行/10操作,直到n变为0即可。也就是说,统计n的位数len的代码是:
int len = 0;
while (n)
{
++len;
n /= 10;
}
本题的完整代码如下:
int findNumbers(int* nums, int numsSize){
int ret = 0;
for (int i = 0; i < numsSize; ++i)
{
int n = nums[i];
// 统计n的长度
int len = 0;
while (n)
{
++len;
n /= 10;
}
// 统计偶数位数数据个数
if (len % 2 == 0)
{
++ret;
}
}
return ret;
}
总结
统计一个整数位数的方法:反复/10,直到变成0位置,进行了几次/10操作,位数就是几。
感谢大家的阅读!