-
[SWEA] 5431. 민석이의 과제 체크하기PS/Java 2021. 3. 9.
수강생들은 1번에서 N번까지 번호가 매겨져 있고, 어떤 번호의 사람이 제출했는지에 대한 목록을 받은 것이다.
과제를 제출하지 않은 사람의 번호를 오름차순으로 출력한다.
import java.util.ArrayList; import java.util.Scanner; public class swea민석이의과제 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int T = scanner.nextInt(); for(int tc = 1; tc <= T; tc++) { int n = scanner.nextInt(); // 수강생 수 int k = scanner.nextInt(); // 과제 낸 사람 수 ArrayList<Integer> arr = new ArrayList<>(); for(int i = 1; i <= n; i++) { arr.add(i); } //과제를 제출한 사람의 번호 K개가 주어짐 for(int i = 0; i < k; i++) { int num = scanner.nextInt(); arr.remove((Object) num); } System.out.print("#" + tc + " "); for(int i : arr) { System.out.print(i + " "); } System.out.println(); } } }
ArrayList를 사용하였다. remove함수는 index로도 접근이 가능하지만 (Object)로 타입캐스팅을 하면 값으로도 제거가 가능하다.
'PS > Java' 카테고리의 다른 글
[SWEA] 1974. 스도쿠 검증 (0) 2021.03.10 [SWEA] 1873. 상호의 배틀필드 (0) 2021.03.09 [SWEA] 1210. [S/W 문제해결 기본] 2일차 - Ladder1 (0) 2021.03.09 [SWEA] 1208. [S/W 문제해결 기본] 1일차 - Flatten (0) 2021.03.09 [SWEA] 2001. 파리 퇴치 (0) 2021.03.09