코테/백준

[백준/JAVA] 2525번: 오븐 시계

imname1am 2023. 3. 16. 12:40
반응형

🔺 문제

 

2525번: 오븐 시계

첫째 줄에 종료되는 시각의 시와 분을 공백을 사이에 두고 출력한다. (단, 시는 0부터 23까지의 정수, 분은 0부터 59까지의 정수이다. 디지털 시계는 23시 59분에서 1분이 지나면 0시 0분이 된다.)

www.acmicpc.net

 

🔺 코드

import java.io.*;
import java.util.*;

public class Main {
	public static void main(String[] args) throws IOException{
	    var br = new BufferedReader(new InputStreamReader(System.in));
	    var st = new StringTokenizer(br.readLine(), " ");   // 한 글자씩
	    
	    int A = Integer.parseInt(st.nextToken());
	    int B = Integer.parseInt(st.nextToken());
	    
	    int C = Integer.parseInt(br.readLine());
	    
	    int min = 60 * A + B;   // 시 -> 분
	    min += C;
	    
        int hour = (min / 60) % 24;
        int minute = min % 60; 
	    
		System.out.print(hour + " " + minute);
	}
}
✅ 해결 아이디어
- 첫 줄에 입력받은 시와 분을 하나의 분으로 변환
- 그 값에 C를 더함
- 결과값을 시-분으로 변환

✔ 놓친 부분 : hour에서 % 24하는 부분!

 

처음에는 C를 시-분으로 변환해 계산하려고 했는데.. 뭔가 조건식이 더 생기고..복잡해질 것 같아서 이렇게 했다.


(참고)

 

[백준] 2525번 : 오븐 시계 - JAVA [자바]

https://www.acmicpc.net/problem/2525 2525번: 오븐 시계 첫째 줄에 종료되는 시각의 시와 분을 공백을 사이에 두고 출력한다. (단, 시는 0부터 23까지의 정수, 분은 0부터 59까지의 정수이다. 디지털 시계는 23

st-lab.tistory.com

 

반응형