算法通关村番外篇-LeetCode编程从0到1系列五

发布时间:2024年01月15日

大家好我是苏麟 , 今天带来算法通关村番外篇-LeetCode编程从0到1系列五 .

数学

1523. 在区间范围内统计奇数数目

描述 :

给你两个非负整数?low?和?high?。请你返回?low??high?之间(包括二者)奇数的数目。

题目 :

LeetCode?1523. 在区间范围内统计奇数数目

代码 :

class Solution {
    public int countOdds(int low, int high) {
        return pre(high) - pre(low - 1);
    }

    public int pre(int x) {
        return (x + 1) >> 1;
    }
}

67. 二进制求和

描述 :

给你两个二进制字符串?a?和?b?,以二进制字符串的形式返回它们的和。

题目 :

LeetCode?67. 二进制求和

代码 :

class Solution {
    public String addBinary(String a, String b) {
        StringBuilder sb = new StringBuilder();
        int i = a.length() - 1;
        int j = b.length() - 1;
        int add = 0;
        while(i >= 0 ||j >= 0 || add != 0){
            int x = i >= 0 ? a.charAt(i) - '0' : 0;
            int y = j >= 0 ? b.charAt(j) - '0' : 0;
            int num = x + y + add;
            sb.append(num % 2);
            add = num / 2;
            i--;
            j--;
        }
        return sb.reverse().toString();
    }
}

这期就到这里 , 下期见!

文章来源:https://blog.csdn.net/sytdsqzr/article/details/135612238
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。