def game_369(n):
def check_only_369(n):
for c in str(n):
if int(c) == 0 or int(c) % 3 != 0:
return 0
return 1
cnt = 0
for i in range(1,n+1):
cnt += check_only_369(i)
return cnt
if __name__ == '__main__':
print(game_369(93))
# 10
import re
def game_369(n):
cnt = 0
p = re.compile('^[369]+$')
for i in range(1,n+1):
if re.search(p, str(i)):
cnt += 1
return cnt
if __name__ == '__main__':
print(game_369(93))
# 10
정규표현식을 사용하면 조건이 있는 문자열를 판단할 때 더 간단하게 해결할 수 있다.