Golang | Leetcode Golang题解之第401题二进制手表
题目:
题解:
func readBinaryWatch(turnedOn int) (ans []string) {
for i := 0; i < 1024; i++ {
h, m := i>>6, i&63 // 用位运算取出高 4 位和低 6 位
if h < 12 && m < 60 && bits.OnesCount(uint(i)) == turnedOn {
ans = append(ans, fmt.Sprintf("%d:%02d", h, m))
}
}
return
}