import java.util.Scanner;
import java.util.Arrays;
public class Main {
static int N;
static int[] num;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
N = sc.nextInt();
num = new int[N];
for(int i=0; i<N; i++){
num[i] = sc.nextInt();
}
Arrays.sort(num);
int M = sc.nextInt();
int[] check = new int[M];
for(int i=0; i<M; i++){
check[i] = sc.nextInt();
boolean flag = having(check[i]);
if(flag)
System.out.print("1 ");
else
System.out.print("0 ");
}
}
public static boolean having(int n){
int left = 0; //인덱스 기준
int right = N-1;
boolean flag = false;
while(left<=right){
int mid = (left+right)/2;
if(num[mid] < n)
left = mid+1;
else if(num[mid] > n)
right = mid-1;
else{
flag = true;
break;
}
}
return flag;
}
}
이분탐색 완전 기본 문제!! <1920번 수찾기> 문제랑 엄청 비슷하다
너무 기본적인 문제라 문제풀이 생각과정도 쓸필요 없음!! 호옥시 설명이 필요하다면 요기 밑에! 1920번 문제를 보면 된다.
'1d-1c > BOJ' 카테고리의 다른 글
2798_블랙잭 (JAVA) (0) | 2020.10.03 |
---|---|
11729_하노이 탑 이동 순서 (JAVA) (0) | 2020.10.02 |
2805_나무 자르기 (JAVA) (C++) (0) | 2020.09.18 |
1920_수 찾기 (JAVA) (C++) (0) | 2020.09.15 |
2343_기타 레슨 (JAVA) (0) | 2020.09.15 |