2180. Count Integers With Even Digit Sum

2180. Count Integers With Even Digit Sum #

题目 #

Given a positive integer num, return the number of positive integers less than or equal to num whose digit sums are even.

The digit sum of a positive integer is the sum of all its digits.

Example 1:

Input: num = 4
Output: 2
Explanation:
The only integers less than or equal to 4 whose digit sums are even are 2 and 4.

Example 2:

Input: num = 30
Output: 14
Explanation:
The 14 integers less than or equal to 30 whose digit sums are even are
2, 4, 6, 8, 11, 13, 15, 17, 19, 20, 22, 24, 26, and 28.

Constraints:

  • 1 <= num <= 1000

题目大意 #

给你一个正整数 num ,请你统计并返回 小于或等于 num 且各位数字之和为 偶数 的正整数的数目。

正整数的 各位数字之和 是其所有位上的对应数字相加的结果。

解题思路 #

  • 简单题。依照题意,计算每个数的各位数字之和,如何和为偶数,则统计结果加一。最后输出统计结果即可。

代码 #

package leetcode

func countEven(num int) int {
	count := 0
	for i := 1; i <= num; i++ {
		if addSum(i)%2 == 0 {
			count++
		}
	}
	return count
}

func addSum(num int) int {
	sum := 0
	tmp := num
	for tmp != 0 {
		sum += tmp % 10
		tmp = tmp / 10
	}
	return sum
}

⬅️上一页

下一页➡️

Calendar May 20, 2022
Edit Edit this page
本站总访问量:  次 您是本站第  位访问者