728x90
<문제>
정수 N이 입력되면 00시 00분 00초부터 N시 59분 59추까지의 모든 시각 중에서 3이 하나라도 포함되는 모든 경우의 수를 구하는 프로그램을 작성하시오. 예를 들어 1을 입력했을 때 다음은 3이 하나라도 포함되어 있으므로 세어야 하는 시각이다.
- 00시 00분 03초
- 00시 13분 30초
반면에 다음은 3이 하나도 포함되어 있지 않으므로 세면 안 되는 시각이다.
- 00시 02분 55초
- 01시 27분 45초
<입력 조건>
- 첫째 줄에 정수 N이 입력된다. (0 <=N <=23)
<출력 조건>
- 00시 00분 00초부터 N시 59분 59초까지의 모든 시각 중에서 3이 하나라도 포함되는 모든 경우의 수를 출력한다.
<문제 풀이>
- 24*60*60은 100,000보다 작으므로 완전 탐색으로 문제를 풀 수 있다.
- n이 3일 때, 13도 세어야 하므로 문자열로 변환하여 계산한다.
<코드>
'''입력 예시
5
'''
n = int(input())
count = 0
for h in range(n+1):
for m in range(60):
for s in range(60):
if str(n) in str(h) or str(n) in str(m) or str(n) in str(s):
count += 1
print(count)
#220321
n = int(input())
answer = 0
for h in range(n+1):
for m in range(60):
for s in range(60):
if '3' in str(s) or '3' in str(m) or '3' in str(h):
answer += 1
<고쳐야 할 점>
- 문제 꼼꼼히 읽기
- 조건문에서 str(n) in str(h)+str(m)+str(s)로 바꿀 수 있다.
'두두의 알고리즘 > 문제' 카테고리의 다른 글
[구현] 난이도1, 백준 18406번 '럭키 스트레이트' (Python) (0) | 2021.11.25 |
---|---|
[구현] 난이도1, 이취코 115p '왕실의 나이트' (Python) (0) | 2021.11.25 |
[구현] 난이도1, 이취코 110p '상하좌우' (Python) (0) | 2021.11.25 |
[탐욕법] 백준 1439번 '뒤집기' (Python) (0) | 2021.11.25 |
[다익스트라] 난이도2, USACO '숨바꼭질' (Python) (0) | 2021.11.24 |