class Solution:
def readBinaryWatch(self, turnedOn: int):
result = []
for i in range(turnedOn + 1):
hours = self.getCombination(i, "h")
mins = self.getCombination(turnedOn - i, "m")
for h in hours:
for m in mins:
if (len(m) == 1):
m = "0" + m
result.append(h + ":" + m)
return result
def getCombination(self, num: int, keyword: str):
hourList = []
minList = []
if (keyword == "h"):
if (num < 4):
for a in range(2):
for b in range(2):
for c in range(2):
for d in range(2):
if (a + b + c + d) == num:
sum = a * 8 + b * 4 + c * 2 + d
if sum < 12:
hourList.append(str(sum))
return hourList
elif (keyword == "m"):
if (num < 6):
for a in range(2):
for b in range(2):
for c in range(2):
for d in range(2):
for e in range(2):
for f in range(2):
if (a + b + c + d + e + f) == num:
sum = a * 32 + b * 16 + c * 8 + d * 4 + e * 2 + f
if sum < 60:
minList.append(str(sum))
return minList
def readBinaryWatch(self, num):
return ['%d:%02d' % (h, m)
for h in range(12) for m in range(60)
if (bin(h) + bin(m)).count('1') == num]
이런 킹받는 이진법 시계가... 디자인만 요즘 감성으로 잘 빠진다면... 은근한 간지템으로 유행할 수 있을지도...?