728x90
반응형
https://www.acmicpc.net/problem/10162
문제를 풀면서 몰랐던 개념
[Python] 나눠지는 수 < 나누는 수
-> 몫은 0
c = 200 // 300
print(c)
>>> 0
문제의 접근 방법
- 10의 배수가 아닐 때, 제시된 3개의 버튼으로 T초를 맞출 수 없음.
- A, B, C 초기의 값을 0으로 설정해두어야 함.
- A, B, C 를 A부터(큰 값) 나눈 순서대로 몫을 카운트하고 나머지를 T에 저장해나가야 함.
- (분)은 (초)단위로 바꿔서 계산하기.
내가 막혔던 부분
- A, B, C 초기 값을 0으로 설정해두면 된다는 생각을 하지 못함.
문제 풀이 방법
요리시간 T초 입력 받기 -> T초가 10의 배수인지 판별해서 처리해주기 -> 10의 배수가 맞다면 A부터 300초로 나눈 몫을 A에 저장하고 나눈 나머지를 다시 T에 저장하기 -> 위 과정을 A, B, C 순으로 반복해주기(나눠지는 수가 더 작다면 초기에 설정해둔 값 그대로 0으로 출력됨) ->10의 배수가 아니라면 '-1' 출력하기
소스코드
T = int(input())
if (T % 10) == 0:
A = B = C = 0
A = T // 300
T %= 300
B = T // 60
T %= 60
C = T // 10
T %= 10
print(A, B, C)
else:
print("-1")
728x90
반응형
'백준 write-up > 정렬 & 그리디' 카테고리의 다른 글
[백준] 뒤집기 : 1439번 - Python (0) | 2021.08.09 |
---|---|
[백준] 동전 0 : 11047번 - Python (0) | 2021.08.09 |
[백준] 설탕 배달 : 2839번 - Python (0) | 2021.08.04 |
[백준] 키보드 이벤트 : 17254번 - Python (0) | 2021.08.03 |
[백준] 카우버거 : 15720번 - Python (0) | 2021.08.01 |