알고리즘 분류
- 수학
- 구현
- 사칙연산
풀이
1. Scanner 로 입력 받기
import java.util.Scanner;
/*
45분전의 시간을 구하면 된다
*/
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int h = sc.nextInt();
int m = sc.nextInt();
if( m < 45 ) {
h--;
m = 60 - (45 - m);
// h시간이 0시라면 음수값이 됨 -> 23시로
if(h < 0 ){
h = 23;
}
System.out.println(h + " " + m);
}else {
m -= 45;
System.out.println(h + " " + m);
}
}
}
2. BufferedReader 로 입력 받기
- readLine() : 한 행을 전부 읽기 때문에 공백 단위로 분리
- StringTokenizer 클래스를 이용하여 분리 : 문자열 반환하니 int 형으로 형 변환 해줘야 함
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
/*
BufferedReader 로 입력받기
readLine() 을 통해 입력 받기
: 한 행을 전부 읽기 때문에 공백단위로 분리
=> StringTokenizer 클래스를 이용하여 분리
*/
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str, " "); // st.nextTokon() 은 문자열을 반환하니 Interger.parseInt()로 int형으로 변환시켜줌
int h = Integer.parseInt(st.nextToken());
int m = Integer.parseInt(st.nextToken());
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 );
}
}
}
- split(" ") 공백 단위로 문자열을 나눔 -> String 배열에 각각 저장
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
/*
BufferedReader 로 입력받기
readLine() 을 통해 입력 받기
: 한 행을 전부 읽기 때문에 공백단위로 분리
=> split(" ") 공백 단위로 문자열 나눔
: String 배열에 각각 저장
*/
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] str = br.readLine().split(" ");
int h = Integer.parseInt(str[0]);
int m = Integer.parseInt(str[1]);
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 );
}
}
}
728x90
반응형
'자료구조+알고리즘 > BOJ' 카테고리의 다른 글
[11720][java][백준] 숫자의 합 (0) | 2022.02.09 |
---|---|
[11654][java][백준] 아스키 코드 (0) | 2022.02.09 |
[10798][java][백준] 세로 읽기 (0) | 2021.11.04 |
[11721][java][백준] 열 개씩 끊어 출력하기 (0) | 2021.11.04 |
[10808][java][백준] 알파벳 개수 (0) | 2021.11.04 |