본문 바로가기

백준 문제풀기/JAVA

[백준 5597 JAVA 자바] 과제 안 내신 분..?

1~30 중에

28 개의 숫자가 입력됩니다

 

입력되지 않은 숫자를 찾아

오름 차순으로 출력합시다

 

int[] arr = new int[30]; 을 이용해도 좋고

집합을 이용해도 좋고

방법은 여려가지 입니다

 

코드입니다

 

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {

		Scanner scan = new Scanner(System.in);
        int[] arr =  new int[30];
                
		for(int j=0;j<28;j++){  
            int a = scan.nextInt();
            arr[a-1]=1;
        }
        
        for(int i=0;i<30;i++){
        	if (arr[i]==0) {
        		System.out.println(i+1);
        	}
        }
		
	}
}

 

저는 int[] arr = new int[30]을 이용해

번호가 불린다면 1로 바꿔줬습니다

 

그리고 0인 번호를 출력하면

자연스럽게 오름차순으로 출력하게 됩니다