문제 요약
정수 N을 입력하면 00시 00분 00초로부터 N시 59분 59초까지의 모든 시각 중에서 3이 하나라도 포함되는 모든 경우의 수를 구하는 프로그램을 작성하시오.
나의 코드 및 설명 (틀렸습니다)
교재의 코드 및 설명
- h : 시간 입력
- 3중 for문 사용
- 시,분,초를 문자열 자료형으로 바꾸어 합치고, 3이 해당 문자열에 포함되는지 확인한다.
h = int(input()) ## h시 59분 59초
count = 0
for i in range(h+1):
for j in range(60):
for k in range(60):
#시,분,초를 문자열 자료형으로 바꾸어 합치고 3이 해당 문자열에 포함되는지 확인한다.
if '3' in (str(i) + str(j) + str(k)):
count += 1
print(count)
피드백
쉬운 문제인데, 너무 어렵게 생각하여 구현에 실패한 것 같다.
특히, if '3' in str(i)+str(j)+str(k) 에서 <str(i)+str(j)+str(k)> 로 문자열을 합치고 <'3' in> 을 통해 합친 문자열 중 3이 포함되는지 확인하는 부분은 꼭 기억하겠다.
'이코테' 카테고리의 다른 글
[이코테] Chapter4-3 구현 / 게임 개발 (0) | 2023.02.20 |
---|---|
[이코테] Chapter4-2 구현 / 왕실의 나이트 (0) | 2023.02.19 |
[이코테] Chapter3-1 그리디 / 거스름돈 (0) | 2023.02.19 |