주제

완전탐색

문제

정수 N이 입력되면 00시 00분 00초부터 N시 59분 59초까지의 모든 시각 중에서 3이 하나라도 포함되는 모든 경우의 수를 구하시오.

예시

N = 1
'''
00시 00분 00초
...
01시 59분 59초
'''

조건

첫째 줄에 정수 N이 입력된다. (0 <= N <= 23)

문제 풀이 아이디어

시간은 24 x 60 x 60 = 86,400이다. 즉, 모든 시간을 순회한다는 것은 86,400번의 시간복잡도가 든다는 것이다.

시간 복잡도가 100,000 미만이기 때문에 완전탐색을 통해 문제를 풀이한다. 즉, 3중 반복문을 통해 최대 24 x 60 x 60 만큼 순회하며 3인지 판별한다.

문제 풀이 방법

h = int(input())
count = 0

for hour in range(h + 1):
    for minute in range(60):
        for second in range(60):
            if '3' in str(hour) + str(minute) + str(second):
                count += 1

print(count)

태그:

카테고리:

업데이트:

댓글남기기