# 알고리즘/이것이 취업을 위한 코딩 테스트다 with 파이썬

[구현] 시각

커피중독자 2022. 8. 1. 02:04

[문제]

- N이 입력되면, 00시00분00초부터 N시00분00초까지 모든 시각중에서 3이 하나라도 포함되는 모든 경우의수를 구하는 프로그램을 구성한다.

- N 으로 5 가 입력되면, 00시00분00초부터 05시00분00초까지 3이 하나라도 포함되는 모든 경우의수를 구하는 프로그램이다.

 

[코드]

n=5
result = 0

for i in range(n+1):
  for j in range(60):
    for k in range(60):
      if '3' in str(i)+str(j)+str(k):
        result += 1

print(result)

 

[아이디어]

- XX시 YY분 ZZ초 를 문자열로 봐버린다.

- 결국 000000, 000001 ..... 000058, 000059, 000100, 000101, ..... 000159, 000200, 000201 .......문자열에서 '3' 이 포함되어있는지를 보면 된다.

 

if '3' in str(i)+str(j)+str(k):
        result += 1

 

- 파이썬이라 가능해보이는 코드이다. 다른언어에서 구현하라고하면 당황할듯하다.

- 구현하고나니 간단하지만 아이디어가 바로 생각나지않는 생각보다 난해한 문제이다.