본문 바로가기
프로그래밍/알고리즘 풀이

[알고리즘] 백준 10815번: 숫자 카드 JAVA

by 방구석개발자 2020. 12. 21.
반응형


import java.io.*;
import java.util.Arrays;
/**
 * 숫자 카드는 정수 하나가 적혀져 있는 카드이다.
 *  상근이는 숫자 카드 N개를 가지고 있다. 
 *  정수 M개가 주어졌을 때,
 *   이 수가 적혀있는 숫자 카드를 상근이가 가지고 있는지 아닌지를 구하는 프로그램을 작성하시오.
 * */

//정렬 + 이분탐색 
public class Main {

	public static void main(String[] args) throws Exception{
		int N,M=0;
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		N = Integer.parseInt(br.readLine());
		
		String[]strNum=br.readLine().split(" ");
		M = Integer.parseInt(br.readLine());
		String[]strmNum=br.readLine().split(" ");
		StringBuilder sb = new StringBuilder();
		Arrays.sort(strNum);

		for(int j=0;j<M;j++){
			sb.append((Arrays.binarySearch(strNum,strmNum[j])>=0)?1+" ":0+" ");
		}
		System.out.print(sb);
	}

}

 

정렬 + 이분탐색을 이용해서 풀었습니다.

아슬아슬하게 넘어가서 다른분들 코드를 참고해서 더 공부 해야겠습니다.

반응형

댓글