전체 글
-
백준 사이트에 입출력 속도 비교하는 내용이 있는데 유용한 자료같다. https://www.acmicpc.net/blog/view/56 입력 속도 비교 여러가지 언어와 입력 방법을 이용해서 시간이 얼마나 걸리는지 비교해 보았습니다. 방법: 첫째 줄에 정수의 개수 N (= 10,000,000), 둘째 줄부터 N개의 줄에 한 개의 자연수(10,000 이하)가 적힌 파일 www.acmicpc.net https://www.acmicpc.net/blog/view/57 출력 속도 비교 여러가지 언어와 출력 방법을 이용해서 시간이 얼마나 걸리는지 비교해 보았습니다. 방법: 총 N개의 줄에 1부터 10,000,000까지의 자연수를 한 줄에 하나씩 출력하는 시간을 측정. 10번 측정해서 평 www.acmicpc.net 이..
[입출력]04. 입출력 방법별 소요 시간 비교백준 사이트에 입출력 속도 비교하는 내용이 있는데 유용한 자료같다. https://www.acmicpc.net/blog/view/56 입력 속도 비교 여러가지 언어와 입력 방법을 이용해서 시간이 얼마나 걸리는지 비교해 보았습니다. 방법: 첫째 줄에 정수의 개수 N (= 10,000,000), 둘째 줄부터 N개의 줄에 한 개의 자연수(10,000 이하)가 적힌 파일 www.acmicpc.net https://www.acmicpc.net/blog/view/57 출력 속도 비교 여러가지 언어와 출력 방법을 이용해서 시간이 얼마나 걸리는지 비교해 보았습니다. 방법: 총 N개의 줄에 1부터 10,000,000까지의 자연수를 한 줄에 하나씩 출력하는 시간을 측정. 10번 측정해서 평 www.acmicpc.net 이..
2022.07.05 -
이번 포스트에서는 표준 출력에 대해서 살펴보자. 표준 출력 표준 출력 메서드 자바에서 표준 출력으로는 PrintStream이 사용되는데 일반적으로 System.out.을 통해서 얻을 수 있다. 다음은 PrintStream에서 출력을 위해 제공되는 메서드이다. 메서드 명 선언부와 설명 print() public void print(Object obj) obj를 콘솔에 출력한다. println() public void println(Object x) x를 콘솔에 출력하고 줄바꿈 한다. printf() public PrintStream printf(String format, Object ... args) 지시자로 구성된 format에 의거해서 args를 콘솔에 출력한다. 출력 포멧 마지막에 사용된 printf..
[입출력]03. 출력과 포멧이번 포스트에서는 표준 출력에 대해서 살펴보자. 표준 출력 표준 출력 메서드 자바에서 표준 출력으로는 PrintStream이 사용되는데 일반적으로 System.out.을 통해서 얻을 수 있다. 다음은 PrintStream에서 출력을 위해 제공되는 메서드이다. 메서드 명 선언부와 설명 print() public void print(Object obj) obj를 콘솔에 출력한다. println() public void println(Object x) x를 콘솔에 출력하고 줄바꿈 한다. printf() public PrintStream printf(String format, Object ... args) 지시자로 구성된 format에 의거해서 args를 콘솔에 출력한다. 출력 포멧 마지막에 사용된 printf..
2022.07.05 -
Scanner는 입력을 가장 편하게 처리할 수 있는 클래스이지만 BufferedReader에 비해 상대적으로 느리다. 이번 포스트에서는 BufferedReader에 대해 알아보자. * 사실 많은 APS 사이트에서 Java의 표준 입력으로 Scanner를 지정하고 있기 때문에 Scanner로 대부분 문제를 풀 수 있다. 다만 약간의 시간을 더 줄여야할 필요가 있다면 BufferedReader를 썼을 때 확실히 성능의 향상을 이룰 수 있다. BufferedReader 생성과 데이터 읽기 BufferedReader 역시 Scanner와 마찬가지로 키보드, 파일, 문자열을 통해서 데이터를 읽어올 수 있다. // 키보드를 이용한 입력 처리 BufferedReader br = new BufferedReader(ne..
[입출력]02. BufferedReader 활용Scanner는 입력을 가장 편하게 처리할 수 있는 클래스이지만 BufferedReader에 비해 상대적으로 느리다. 이번 포스트에서는 BufferedReader에 대해 알아보자. * 사실 많은 APS 사이트에서 Java의 표준 입력으로 Scanner를 지정하고 있기 때문에 Scanner로 대부분 문제를 풀 수 있다. 다만 약간의 시간을 더 줄여야할 필요가 있다면 BufferedReader를 썼을 때 확실히 성능의 향상을 이룰 수 있다. BufferedReader 생성과 데이터 읽기 BufferedReader 역시 Scanner와 마찬가지로 키보드, 파일, 문자열을 통해서 데이터를 읽어올 수 있다. // 키보드를 이용한 입력 처리 BufferedReader br = new BufferedReader(ne..
2022.07.05 -
이번 포스트에서는 자바에서 입력을 가장 손쉽게 처리할 수 있는 Scanner에 대해서 알아보자. Scanner 기본 사용법 Scanner를 만들기 위한 생성자는 InputStream 타입의 파라미터 source를 받는다. public Scanner(InputStream source) {...} 이 source가 어디에서 자료를 받을것인지를 결정하는데 일반적으로 키보드에서 받을 경우 System.in, 파일로 부터 받을 경우 FileInputStream이 사용된다. Scanner에서 데이터를 읽어들일 때는 일반적으로 hasNextXXX() --> nextXXX()의 두 단계를 거친다. 여기서 XXX는 데이터 형에 따라 여러 가지 형태가 있다. 각각의 데이터 즉 토큰에 대한 구분은 공백문자('\t',spac..
[입출력]01. Scanner이번 포스트에서는 자바에서 입력을 가장 손쉽게 처리할 수 있는 Scanner에 대해서 알아보자. Scanner 기본 사용법 Scanner를 만들기 위한 생성자는 InputStream 타입의 파라미터 source를 받는다. public Scanner(InputStream source) {...} 이 source가 어디에서 자료를 받을것인지를 결정하는데 일반적으로 키보드에서 받을 경우 System.in, 파일로 부터 받을 경우 FileInputStream이 사용된다. Scanner에서 데이터를 읽어들일 때는 일반적으로 hasNextXXX() --> nextXXX()의 두 단계를 거친다. 여기서 XXX는 데이터 형에 따라 여러 가지 형태가 있다. 각각의 데이터 즉 토큰에 대한 구분은 공백문자('\t',spac..
2022.07.05 -
사실 APS(Algorithm Problem Solving)라고 해서 일반적인 애플리케이션 작성과 다른 특별한 코딩 방법이 있을리는 없다. 흔히 APS를 위한 코드는 속도만을 중시 하기 때문에 몇몇 알고리즘 기법을 이용해서 직선으로 내달리는 코드만을 작성한다고 생각하기 쉬운데 보기 좋은 떡이 먹기 좋은 것은 일반 애플리케이션이나 APS에서나 동일하다. 하지만 그럼에도 불구하고 짧은 시험 시간동안 깔끔한 설계를 통해서 문제를 풀기란 쉽지 않다. 그래서 객체지향적인 개념에는 부합하지 않더라도 살짝 양보하는게 좋거나, APS과정에서 유용한 코딩 방식에 대해서 알아보자. 아 먼저 필자는 Java언어를 이용하기 때문에 아래 내용들은 자바를 기준으로 작성되어있다. static member 활용 instance me..
APS를 위한 코딩 스타일사실 APS(Algorithm Problem Solving)라고 해서 일반적인 애플리케이션 작성과 다른 특별한 코딩 방법이 있을리는 없다. 흔히 APS를 위한 코드는 속도만을 중시 하기 때문에 몇몇 알고리즘 기법을 이용해서 직선으로 내달리는 코드만을 작성한다고 생각하기 쉬운데 보기 좋은 떡이 먹기 좋은 것은 일반 애플리케이션이나 APS에서나 동일하다. 하지만 그럼에도 불구하고 짧은 시험 시간동안 깔끔한 설계를 통해서 문제를 풀기란 쉽지 않다. 그래서 객체지향적인 개념에는 부합하지 않더라도 살짝 양보하는게 좋거나, APS과정에서 유용한 코딩 방식에 대해서 알아보자. 아 먼저 필자는 Java언어를 이용하기 때문에 아래 내용들은 자바를 기준으로 작성되어있다. static member 활용 instance me..
2022.07.04