🔗 백준 1920 - 수 찾기
문제

알고리즘 분류
풀이
1. 입력
- 주어진 정수에는 중복이 필요 없으므로 Set에 저장
int n = Integer.parseInt(br.readLine());
HashSet<Integer> set = new HashSet<Integer>();
StringTokenizer st = new StringTokenizer(br.readLine());
for(int i = 0; i<n; i++){
set.add(Integer.parseInt(st.nextToken()));
}
2. 수를 입력받아 주어진 수에 있는지 확인
- Collections의 contains함수를 이용해 있는지 확인
int m = Integer.parseInt(br.readLine());
st = new StringTokenizer(br.readLine());
for(int i = 0; i<m; i++){
if(set.contains(Integer.parseInt(st.nextToken())))
sb.append(1).append("\n");
else sb.append(0).append("\n");
}
전체 코드
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashSet;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int n = Integer.parseInt(br.readLine());
HashSet<Integer> set = new HashSet<Integer>();
StringTokenizer st = new StringTokenizer(br.readLine());
for(int i = 0; i<n; i++){
set.add(Integer.parseInt(st.nextToken()));
}
int m = Integer.parseInt(br.readLine());
st = new StringTokenizer(br.readLine());
for(int i = 0; i<m; i++){
if(set.contains(Integer.parseInt(st.nextToken())))
sb.append(1).append("\n");
else sb.append(0).append("\n");
}
System.out.println(sb);
}
}