사실 이번엔 혼자 풀었다..
참고자료는 다른방법의 답이 있는지 구글링하다 들린 곳입니다.
코드
package backjun_for;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class for_2741 {
public static void main(String[] args) throws Exception, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int n = Integer.parseInt(br.readLine());
br.close();
for(int i=1; i<=n; i++) {
bw.write(i+"\n");
}
bw.flush();
bw.close();
}
}
본래 저는 버퍼출력 사용법이 익숙하지 않아서 버퍼로 입력을 받고 출력을 System.out.println(i)로 받아 문제를 풀었는데,
본 코드는 출력도 버퍼로 한 코드 입니다.
성능차이는 System.out.println(i) 는 1048ms 이 나왔고,
버퍼 출력은 308ms 가 나왔습니다.
이젠 다신 System.out.println은 안쓰겠습니다.^^
코드 설명은
버퍼로 몇번 반복 할 것인지 입력을 n 으로 받고 close 를 해줍니다.
반복문으로 i가 n과 같거나 클 때 까지 ++ 증감해줍니다.
다음 출력을 bw.wirte(i+"\n); 으로
한 줄 출력 후 줄 띄움, 다시 반복문 한줄 띄움, 반복문 식으로 n까지 출력하여 줍니다.
마지막으로 bw.flush(); 로 버퍼를 비워주고(남은 버퍼출력)
bw.close();로 닫아줍니다.!
혼자풀었습니다.! 이제 부터 시작이다!!!!!