## Java 풀이 시 유의사항 ##
클래스명은 Main 으로 작성해야함!
💡 문제

💬 입출력 예시

📌 풀이(소스코드)
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String time = br.readLine();
int h = Integer.parseInt(time.split(" ")[0]);
int m = Integer.parseInt(time.split(" ")[1]);
br.close();
if (m < 45) {
h--;
m = 60 - (45 - m);
if (h < 0) {
h = 23;
}
System.out.println(h + " " + m);
}
else {
m -= 45;
System.out.println(h + " " + m);
}
}
}
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int h = Integer.parseInt(st.nextToken());
int m = Integer.parseInt(st.nextToken());
br.close();
if (m < 45) {
h--;
m = 60 - (45 - m);
if (h < 0) {
h = 23;
}
System.out.println(h + " " + m);
}
else {
m -= 45;
System.out.println(h + " " + m);
}
}
}
📄 해설
풀이 1
과 풀이 2
의 차이 : StringTokenizer
사용과 미사용의 차이. 실제 성능 상으로도 큰 차이는 없음
- 3가지의 경우로 생각해야함
m < 45
인 경우 : m = 60 - (45 - m)
1-1. h < 0
인 경우 : h = 23
- 그 외의 경우 :
m = 45
, h
는 변동 X