문제 풀이를 하다보면 시간제한이 빡빡한 문제가 있다.
이럴 때는 BufferedReader와 BufferedWriter를 사용하면 해결되는 경우가 있다.
BW의 경우 BR와 비슷하게 사용가능하다.
주의점
- 예외처리를 던저야 한다
- close() 또는 flush()를 해줘야 한다는 점이다.
- 줄바꿈을 따로 처리해줘야함
- 문자열만 처리하기 때문에 정수 등의 자료형을 형변환 해줘야 함 (또는 변수+"\n"으로 처리)
import java.io.*;
import java.util.*;
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));
String[] input1 = br.readLine().split(" ");
String[] input2 = br.readLine().split(" ");
int t = Integer.valueOf(br.readLine());
int w = Integer.valueOf(input1[0]);
int h = Integer.valueOf(input1[1]);
int p = Integer.valueOf(input2[0]);
int q = Integer.valueOf(input2[1]);
int ansP = 0;
int ansQ = 0;
if (((p+t)/w)%2==0){
ansP=(p+t)%w;
}else{
ansP=w-(p+t)%w;
}
if (((q+t)/h)%2==0){
ansQ=(q+t)%h;
}else{
ansQ=h-(q+t)%h;
}
System.out.printf("%d %d",ansP,ansQ);
System.out.println();
bw.write(ansP+" "+ansQ);
bw.close();
}
}
'Problem Solving > 자바 문법' 카테고리의 다른 글
자바 자료형 (0) | 2024.01.29 |
---|---|
Array 출력방법 (0) | 2024.01.29 |
시간복잡도 (0) | 2024.01.29 |
문자열 포맷 (0) | 2024.01.24 |
자바 입력받기 (1) | 2024.01.24 |