Notice
Recent Posts
Recent Comments
Link
Dev.baelanche
[백준 10815] 숫자 카드 본문
반응형
매 케이스마다 상근이의 카드 한개를 비교할 카드 배열의 길이를 반으로 쪼개며 이분탐색한다.
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int a[] = new int[n];
for(int i=0; i<n; i++) a[i] = sc.nextInt();
Arrays.sort(a);
int m = sc.nextInt();
while(m-->0) {
int card = sc.nextInt();
int left = 0;
int right = n-1;
while(left + 1 < right) {
int mid = (left + right)/2;
if(a[mid] <= card) left = mid;
else right = mid;
}
if(left == n-2 && a[left+1] ==card) System.out.print(1);
else System.out.print(a[left] == card ? 1 : 0);
System.out.print(" ");
}
}
}
left+1 == right 일때의 경우를 잡아내지 못해서
그 부분은 하드코딩으로 예외처리 했다ㅜㅜ
반응형
'Data Structure & Algorithm > PS - JAVA' 카테고리의 다른 글
[백준 2903] 중앙 이동 알고리즘 (0) | 2019.06.29 |
---|---|
[백준 1057] 토너먼트 (0) | 2019.06.29 |
[백준 1009] 분산처리 (0) | 2019.06.29 |
[백준 2979] 트럭 주차 (0) | 2019.06.29 |
[백준 1547] 공 (0) | 2019.06.29 |
Comments