题解 | #求最大连续bit数#

求最大连续bit数

http://www.nowcoder.com/practice/4b1658fd8ffb4217bc3b7e85a38cfaf2

import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int num = Integer.valueOf(scan.nextLine().trim());
        int ans = 0;
        int acc = 0;
        int sign = 0;
        while (num != 0) {
            if (num % 2 == 0) {
                if (sign == 1) {
                    sign = 0;
                    ans = Math.max(ans, acc);
                    acc = 0;
                }
            } else {
                if (sign == 0) {
                    sign = 1;
                }
                acc++;
            }
            num /= 2;
        }
        ans = Math.max(ans, acc);
        System.out.println(ans);
    }
}
全部评论
该牛油正在参与牛客写题解薅羊毛的活动,牛币,周边,京东卡超多奖品放送,活动进入倒计时!快来捡漏啦https://www.nowcoder.com/discuss/888949?source_id=profile_create_nctrack&channel=-1
点赞 回复 分享
发布于 2022-04-20 17:02

相关推荐

评论
点赞
收藏
分享
牛客网
牛客企业服务