Untitled

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Baek5597 {

	public static void main(String[] args) throws IOException {

		//이 문제에 
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
      
		int arr[] = new int[31];  //0~30번의 인덱스 생성
		
		for(int i = 1; i <= 28; i++ ) {      // 출석번호는 0포함하면 안되서 i 초기화 1
			int a = Integer.parseInt(br.readLine());
			arr[a] = 1; 
		}
		
		for(int i = 1; i < 31; i++ ) {
			if(arr[i] != 1) {
				System.out.println(i);
			}
		}
	}
}

Untitled

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Baek3052 {

	public static void main(String[] args) throws IOException {

		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

		int[] arr = new int[10]; // 0~9 초기화 설정 

		for(int i=0; i<arr.length; i++) {
			arr[i] = Integer.parseInt(br.readLine())%42;
		}

		int cnt = 0;

		for(int i = 0; i < arr.length; i++) {  // i = 0~9까지 반복
			boolean flag = false;  // false로 초기화
			for(int j = i+1; j < arr.length; j++) { //i를 뺀 나머지를 반복  
				if(arr[i] == arr[j]) { //i와 i를 뺀 나머지와 비교해서 같으면 true
					flag = true;	  
				}
			}
			if(flag == false) {  //i와 다른 값들 비교했을때 없으면 cnt 1증가
				cnt++;
			}
		}System.out.println(cnt);
	}    //중복값 찾을 때 중요한 것은 중복값이 있다면 그 중복값이 마지막 순일때를 참고
}

arr의 각 수는 0이상 100 이하고 N은 1000이하이다.

fun2({1, 52, 48}, 3) = 1,

fun2({50,42},2) = 0

int fun2(int arr[], int N){
 int occur[101] = {};
  for(int i = 0; i < N; i++){
    if(occur[100-arr[i]] == 1)
       return 1;
    occur[arr[i]] = 1;
  }
  return 0;
}