반응형

안녕하세요, 츄르 사려고 코딩하는 집사!      코집사입니다.

 

1. 코드입니다.

H, M = map(int, input().split())

if M > 44 :
    print(H,M-45);
elif M < 45 and H>0 :
    print(H-1,M+15)
else :
    print(23, M+15)

 

2. 해설입니다.

H(시간)와  M(분)에 map 함수를 띄어쓰기로 입력을 받습니다.(split()으로 띄어쓰기 구분)

시간을 봤을 때, 45분씩 빼서 알람을 설정하기 때문에, M이 45 이상이면 M에서 45를 뺀 값을 그대로 출력하면 됩니다.

그리고, 45분 미만이면 시간에서 1을 빼줍니다.

그리고 나서 M을 결정해야 합니다.

M이 40일 때 45를 빼면 -5가 남아 55분으로 출력이 되야 합니다.

M이 35일 때 45를 빼면 -10이 남아 50분으로 출력이 되야 합니다.

M이 30일 때 45를 빼면 -15가 남아 45분으로 출력이 되야 합니다.

위의 규칙을 봤을 때, M에 15를 더하면 출력이 되는 분이 남게 됩니다.

그래서 45분 미만이면 M+15를 하여 출력을 해줍니다.

그리고 나서 H(시간)이 0시라면 H(시간)가 23으로 출력을 해야하기 때문에 else문처럼 print(23)으로 출력을 해주면 됩니다.

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기