본문 바로가기

반응형

컴퓨터/JAVA

(20)
코딩테스트를 위한 자바(java) 2차원 배열 입력받기 - 4 bfs, dfs 등의 문제를 풀다보면 2차원 배열형태로 입력을 받아야 할 경우가 자주 있다. 미로탈출과 같이 x, y 좌표를 사용하는 문제가 대표적이다. 입력이 공백없이 주어졌을때 편하게 입력 받을 수 있는 방법을 알게되어 공유하려고 한다. int형은 4바이트, char형은 2바이트를 사용하므로 공간복잡도상에서 이득을 얻을 수도 있다. 입력 : 7 8 a#c#eF.1 .#.#.#.. .#B#D### 0....F.1 C#E#A### .#.#.#.. d#f#bF.1 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class P1194 { static int N, M; static..
코딩테스트를 위한 자바(java) 순열함수 구현 - 3 c, c++ 과 같은 다른 언어에서는 라이브러리로 순열함수를 지원하지만 자바에서는 순열함수 라이브러리를 지원하지 않아 직접 구현해야한다. N개의 원소 중 M개를 뽑아 나열하는 모든 경우를 구하는 함수를 구현하는 코드는 다음과 같다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Collections; import java.util.StringTokenizer; public class P15654 { static int N, M; static ArrayList list = new ArrayList(); sta..
코딩테스트를 위한 자바(java) 정렬 - 2 오름차순 정렬하기 public static void main(String[] args) { ArrayList list = new ArrayList(); list.add(3); list.add(10); list.add(1); list.add(4); Collections.sort(list); for(int i = 0 ; list.size() > i ; ++i) { System.out.println(list.get(i)); } // 결과 = 1 3 4 10 } 내림차순 정렬하기 public static void main(String[] args) { ArrayList list = new ArrayList(); list.add(3); list.add(10); list.add(1); list.add(4); Col..
코딩테스트를 위한 자바(java) 파일 입력, 출력 - 1 테스트케이스 입력이 다음과 같이 주어졌을때 처리 방법 case 1 : 첫 줄에는 숫자의 갯수 N / 두번째 줄부터는 숫자 주어진 경우 3 1 2 3 public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); // 첫번째 N 문자 입력받기 String[] str = new String[N]; // N 크기의 String 배열 생성 for (int i = 0; N > i; ++i) { // String 배열에 입력받은 문자 담기 str[i] = br.read..

반응형