BruteForce_04_시각(18312)

Eugenius1st·2022년 5월 17일
0

Algorithm_Baekjoon

목록 보기
114/158
post-thumbnail

BruteForce04시각(18312)

문제

정수 N과 K가 입력되었을 때 00시 00분 00초부터 N시 59분 59초까지의 모든 시각 중에서 K가 하나라도 포함되는 모든 시각을 세는 프로그램을 작성하시오. 시각을 셀 때는 디지털 시계를 기준으로, 초 단위로만 시각을 구분한다.

예를 들어 K=3일 때, 다음의 시각들은 3이 하나 이상 포함되어 있으므로 세어야 하는 시각의 대표적인 예시이다.

23시 00분 00초
07시 08분 33초
반면에 다음의 시각들은 3이 하나도 포함되어 있지 않으므로 세면 안 되는 예시이다.

15시 02분 55초
18시 27분 45초

입력

첫째 줄에 정수 N과 K가 공백을 기준으로 구분되어 주어진다. (0≤N≤23, 0≤K≤9)

출력

00시 00분 00초부터 N시 59분 59초까지의 모든 시각 중에서 K가 하나라도 포함되는 시각들의 수를 출력한다.

풀이

  • h,m,s 을 3중 for문을 통해 조회한다
  • str화 하여 if in 함수로 K 가 있는지 확인
  • cnt 에 값 누적

코드

import sys
sys.stdin = open("input.txt", "rt")
input = sys.stdin.readline

N , K = map(int,input().split())
K = str(K)
cnt = 0
#if else 로 00시간 형태를 맞춰주어야 한다. 
for h in range(N+1):
    if h<10:
        h = '0'+str(h)
    for m in range(60):
        if m<10:
            m = '0'+str(m)
        for s in range(60):
            if s<10:
                s = '0'+str(s)
            if K in str(h)+str(m)+str(s):
                cnt += 1
print(cnt)
             

profile
최강 프론트엔드 개발자가 되고싶은 안유진 입니다

0개의 댓글