공부/백준

백준 5597번: 과제 안 내신 분..?(C++)

상연 2020. 12. 5. 23:12

목차

    www.acmicpc.net/problem/5597

     

    5597번: 과제 안 내신 분..?

    입력은 총 28줄로 각 제출자(학생)의 출석번호 n(1 ≤ n ≤ 30)을 하나씩 입력합니다. 입력한 출석번호에 중복은 없으며, 순서에 상관없이 입력받을 수 있어야 합니다.

    www.acmicpc.net

    코드

    #include <iostream>
    using namespace std;
    
    int main() {
    	bool check[31] = {0, };
    	int temp;
    	for(int i=0; i<28; i++){
    		 cin >> temp;
    		 check[temp] = 1;}
    	for(int j=1; j<31; j++){
    		if(check[j] == 0) cout << j << endl;
    	}
    }

     

    풀이

    문제 제목이 재밌어 보여서 선택했습니다.

    난이도 자체는 쉽습니다.

    1~30중에 없는 숫자 두 개를 찾아서 출력 해 주면 되는 문제입니다.

    저는 bool 타입의 배열을 만든후 호출된 수 index에는 1로 바꾼 후, 다시 그 배열을 처음부터 탐색하면서

    0인 것을 차례로 출력했습니다.