원칙: 거짓 요소로 부울 배열을 초기화하면 과제를 제출한 학생의 번호에 해당하는 인덱스의 요소가 참으로 변경됩니다.
인덱스 배열과 제출한 학번 배열을 따로 만들어서 필요에 따라 활용하는 것이 포인트입니다.
참조)
https://like-a-forest.48
(백준) 자바 과제 5597 안 제출한 사람…? – 1차원 배열
타이핑이 많아서 귀찮긴 하지만 타이핑을 안할거니까 간단한 문제입니다.
즉시 떠오르는 것은 1에서 30까지의 부울 배열을 선언한 다음 28을 입력하는 동안 배열 위치를 true로 변경하는 것입니다.
hellodoor.tistory.com
(백준) 5597호 : 누가 지시하지 않았어? – 자바(자바)
https://www.acmicpc.net/problem/5597 #5597: 누가 과제 안줬어…? X대학의 M교수는 프로그래밍을 담당하고 있다.
교실에는 30명의 학생이 있고 각 학생은 목록에 1에서 30까지의 출석 번호가 있습니다.
프로퍼코딩.tistory.com
내 대답)
import java.util.Scanner;
public class Main {
public static void main (String() args){
Scanner sc = new Scanner(System.in);
boolean() list = new boolean(31); // 요소 기본값 false
int() submitted = new int(28);
for (int num : submitted) {
num = sc.nextInt();
list(num) = true;
}
for (int i=1; i<31; i++) {
if (list(i) == false) {
System.out.println(i); // 마지막엔 인덱스를 출력해야 한다는 거 잊지말기!
}
}
}
}