티스토리 뷰

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이 하나라도 포함되는 모든 경우의 수를 출력한다.

 


입력 예시                                       출력 예시

5                                                   11475

 


 

1초 1초 다 카운트 하는 건 아닐거야 하고 처음엔 하나 하나 셌당..

 

1분 -> 19번

2분 -> 19번

3분 -> 60번

13

23

30~39

43

53

 

이렇게 다 세서 더할 작정! 

이었는데 그냥 완전탐색 하여 전체 시간을 돌며 카운트 하는게 맞았당...

 

n = int(input())

cnt = 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):
                cnt +=1

print(cnt)

 

구현이 쉬운 듯 어려운 듯..

728x90
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함