https://www.acmicpc.net/problem/10162
1. 아이디어
최소 버튼 조작 방법은 지정된 시간이 큰 버튼을 많이 누를수록 유리다.
2. 문제풀이
T초를 맞출 수 없는 경우는 T가 10의 배수가 아니어서 더 작은 단위가 필요한 경우로 먼저 조건처리를 해줬고 맞출 수 있는 경우에는 몫과 나머지 연산을 활용해서 버튼 조작 횟수를 구하는 방식으로 구현했다.
3. 코드
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringBuilder sb = new StringBuilder();
int T = Integer.parseInt(br.readLine());
if (T % 10 != 0) sb.append(-1);
else sb.append(T / 300).append(" ").append(T % 300 / 60).append(" ").append(T % 60 / 10);
bw.write(sb.toString());
bw.flush();
}
}
4. 후기
'코딩테스트 준비 > 백준' 카테고리의 다른 글
[백준] 25304번 - 영수증 [Java] (0) | 2025.01.08 |
---|---|
[백준] 2775번 - 부녀회장이 될테야 [Java] (0) | 2025.01.08 |
[백준] 1644번 - 소수의 연속합 [Java] (0) | 2025.01.07 |
[백준] 2960번 - 에라토스테네스의 체 [Java] (0) | 2025.01.07 |
[백준] 10214번 - Baseball [Java] (1) | 2025.01.07 |