参考题解:官方题解
题目:
标签:
- 意想不到。
- 位运算。
思路:
- 这道题是一道简单题,只需要枚举就可以解决。
- 然而,必须要知道这是一道枚举题。否则可能会想歪。
- 枚举所有数字,用 bitCount 计算对应的比特数,保留符合要求的组合,并生成符合格式要求的题解。
题解:
class Solution {
public List<String> readBinaryWatch(int turnedOn) {
List<String> ans = new ArrayList<String>();
for (int h = 0; h < 12; ++h) {
for (int m = 0; m < 60; ++m) {
if (Integer.bitCount(h) + Integer.bitCount(m) == turnedOn) {
ans.add(h + ":" + (m < 10 ? "0" : "") + m);
}
}
}
return ans;
}
}