티스토리 뷰

백준

백준 소스코드 [C++] 1920 수 찾기

Hani_Levenshtein 2020. 8. 29. 08:56

https://www.acmicpc.net/problem/1920

 

1920번: 수 찾기

첫째 줄에 자연수 N(1≤N≤100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1≤M≤100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들이 A안��

www.acmicpc.net

백준 소스코드 [C++] 1920 수 찾기

#include <iostream>
#include <algorithm>
#include <queue>
#include <string.h>
#include <limits.h>
typedef long long ll;
using namespace std;
int arr[100000];
int n, m,k;
void find(int arr[],int m) {
	int start = 0;
	int end = n-1;
	while (start <= end) {
		int mid = (start + end) / 2;
		if (arr[mid] == m) {
			cout << "1"<<'\n'; return;
		}
		else if (arr[mid] > m) end = mid - 1;
		else if (arr[mid] < m) start = mid + 1;
	}
	cout << "0"<<'\n'; return;
}
int main() {
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	
	cin >> n;
	for (int i = 0;i < n;i++) cin >> arr[i];
	sort(arr, arr + n);
	cin >> k;
	for (int i = 0;i < k;i++) {
		cin >> m;
		find(arr, m);
	}
	return 0;
}
댓글