배열 요소 중 누락된 부분 찾기
문제
임의의 크기의 배열 A[N-1]가 있다. 배열의 길이 N은 입력으로 받는다.
길이 N을 입력한 후 배열 A[N-1]의 배열 요소를 임의의 정수로 입력한다.
A[N-1] 배열에 1 부터 N까지의 정수가 모두 들어가 있어야 한다고 가정한다면 입력된 배열에서 가정에 어긋난 값을 출력하라
1. 배열의 길이 N 2. 배열요소 N개의 값
입력 샘플
5
1,2,1,3,2
출력 샘플
(1부터 N 중에서 누락된 요소)
4,5
문제 풀이
package algorithm;
import java.io.*;
public class Main {
private static final BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
public static void main(String[] args) throws IOException {
int n = Integer.parseInt(br.readLine());
String[] inputArr = br.readLine().split(",");
int[] tempArr = new int[n];
boolean[] occurArr = new boolean[n];
for (int i = 0; i < n; i++) {
tempArr[i] = Integer.parseInt(inputArr[i]);
occurArr[tempArr[i] - 1] = true;
}
boolean isFirst = true;
for (int i = 0; i < n; i++) {
if (!occurArr[i]) {
System.out.print(isFirst ? (i + 1) : "," + (i + 1));
isFirst = false;
}
}
}
}
'Programming > algorithm' 카테고리의 다른 글
[algorithm] 2007년 (0) | 2016.04.02 |
---|---|
[algorithm] 문자열 조합 (0) | 2016.03.13 |
[algorithm] 팰린드롬 만들기 (0) | 2016.03.11 |
[algorithm] 크로아티아 알파벳 (0) | 2016.03.10 |
[algorithm] 반복되지 않는 첫 번째 문자 찾기 (0) | 2016.03.10 |