package main

import (
    "fmt"
)

func main() {
    var n int
    var res int
    var max int
    fmt.Scan(&n)

    //fmt.Println(n)

    for n != 0{
        tmp := n%2
        n = n/2
        //fmt.Println(tmp)

        if tmp == 1{
            res++
            if res > max{
                max = res
            }
        }else{
            res = 0
        }
    }

    fmt.Println(max)

}

重点理解 进制转化底层原理,连续1,统计,当出现中断时最大值重置为1