Recent Posts
소소한 개발이야기
[백준 #11728번 JAVA] 배열 합치기 풀이 본문
📄 배열 합치기 [백준 11728번]
문제는 정렬을 이용해 해결하였습니다. 문제가 쉬운 관계로 간단하게 설명 드리겠습니다.
먼저 문제의 조건을 보면 주어지는 두 배열을 합친 뒤 정렬하여 출력하라. 입니다. 즉, 주어지는 두 배열을 합친 길이 만큼의 새로운 배열을 생성 한 뒤 두 배열의 값을 모두 넣습니다. 이 후 Arrays.sort()를 이용해 정렬 한 뒤 출력하면 문제를 해결할 수 있습니다.
글보단 코드를 보면 더 이해하기 쉽습니다.
🌱 main 함수
public static void main(String[] args) throws IOException {
String[] input = br.readLine().split(" ");
int sizeA = Integer.parseInt(input[0]);
int sizeB = Integer.parseInt(input[1]);
int[] arrA = getArray(sizeA);
int[] arrB = getArray(sizeB);
solve(arrA, arrB, sizeA, sizeB);
}
🌱 solve 함수
private static void solve(int[] arrA, int[] arrB, int sizeA, int sizeB) {
int[] temp = new int[sizeA + sizeB];
int index = 0;
for (int i = 0; i < sizeA; i++) {
temp[index++] = arrA[i];
}
for (int i = 0; i < sizeB; i++) {
temp[index++] = arrB[i];
}
Arrays.sort(temp);
StringBuilder builder = new StringBuilder();
for (int i = 0; i < temp.length; i++) {
builder.append(temp[i]).append(" ");
}
System.out.println(builder.toString());
}
🌱 getArray 함수
private static int[] getArray(int size) throws IOException {
int[] temp = new int[size];
String[] input = br.readLine().split(" ");
for (int i = 0; i < size; i++) {
temp[i] = Integer.parseInt(input[i]);
}
return temp;
}
💡 Github에 더 많은 문제 풀이가 있습니다.
'BOJ' 카테고리의 다른 글
[백준 #1436번 JAVA] 영화감독 숌 풀이 (0) | 2019.07.09 |
---|---|
[백준 #2576번 JAVA] 홀수 풀이 (0) | 2019.07.09 |
[백준 #2935번 JAVA] 소음 풀이 (0) | 2019.07.08 |
[백준 #12790번 JAVA] Mini Fantasy War 풀이 (0) | 2019.07.08 |
[백준 #5532번 JAVA] 방학숙제 풀이 (0) | 2019.07.08 |
Comments