PS/BOJ
[백준] 1920.cpp : 수 찾기
bconfiden2
2020. 5. 10. 22:44
1920번: 수 찾기
첫째 줄에 자연수 N(1≤N≤100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1≤M≤100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들이 A안에 존재하는지 알아내면 된다. 모든 정수의 범위는 -231 보다 크거나 같고 231보다 작다.
www.acmicpc.net
1. 입력 갯수만큼 배열을 만들어서 넣어준다
2. 정렬한 후 이진탐색으로 원소 유무 확인한다
[Points]
1. 앞서 정렬에 관해서 몇개 풀어봤는데, 이번에는 탐색에 초점을 맞춰보았따
2. 정렬, 탐색 할 필요 없이 애초에 입력가능한 숫자의 최댓값만큼 배열을 만들어놓고, 입력받은 수의 인덱스로 가서 채우는 방식으로 숫자가 있는지
없는지를 검사할 수 있었다. 이것이 더 좋은 방법 같다
[More]
1. 다른분들 중에는 map 이나 set 을 활용해서 푸신 분들이 많았다. 이걸 써서 다시 풀어보자
2. 이진탐색 직접구현하기
3. 걸리는 시간을 확인하는 방법 찾아보기