leetcode-1523-easy

Count Odd Numbers in an Interval Range

Given two non-negative integers low and high. Return the count of odd numbers between low and high (inclusive).

Example 1:

Input: low = 3, high = 7
Output: 3
Explanation: The odd numbers between 3 and 7 are [3,5,7].
Example 2:

Input: low = 8, high = 10
Output: 1
Explanation: The odd numbers between 8 and 10 are [9].
Constraints:

0 <= low <= high <= 10^9

思路一:遍历统计奇数的个数,提交后发现效率很低,再思考一下,奇偶的分布是对半,只要判断一下开头是奇数还是偶数就能统计所有奇数的个数

    public int countOdds(int low, int high) {
        int count = 0;
        int x = (high - low) / 2 + 1;

        if (low % 2 == 0 && high % 2 == 0) {
        count = x - 1;
        } else {
        count = x;
        }

        return count;
        }
posted @ 2023-03-11 13:38  iyiluo  阅读(20)  评论(0)    收藏  举报