알고리즘 분류
1. 문제

2. 풀이
2.1. 1-30이 모두 들어있는 배열 생성
List<Integer> nums=new ArrayList<Integer>();
for(int i=0; i<30; i++){
nums.add(i+1);
}
2.2. 입력값과 같은 배열 요소를 삭제 (28개)
for(int j=0; j<28; j++){
nums.remove(Integer.valueOf(parseInt(sc.nextLine())));
}
2.3. 남은 두 요소 중 작은 요소 먼저 출력 (if-else)
if(nums.get(0) <= nums.get(1)){
System.out.println(nums.get(0));
System.out.println(nums.get(1));
}
else{
System.out.println(nums.get(1));
System.out.println(nums.get(0));
}
3. 전체 코드
import java.util.*;
import static java.lang.Integer.parseInt;
public class BOJ_5597 {
public static void main(String[] args) {
List<Integer> nums=new ArrayList<Integer>();
for(int i=0; i<30; i++){
nums.add(i+1);
}
Scanner sc=new Scanner(System.in);
for(int j=0; j<28; j++){
nums.remove(Integer.valueOf(parseInt(sc.nextLine())));
}
if(nums.get(0) <= nums.get(1)){
System.out.println(nums.get(0));
System.out.println(nums.get(1));
}
else{
System.out.println(nums.get(1));
System.out.println(nums.get(0));
}
}
}