11 해설
-
0
#include <queue> #include <math.h> #include <stack> #include <vector> #include <stdio.h> #include <iostream> #include <vector> #include <iomanip> #include <string.h> #include<cstring> #include <algorithm> using namespace std; #define LL long long const int N = 1e6 + 10; const int INF = 0x3f3f3f3f; using namespace std; int n , m , a [ N ] ; bool find ( int x ) { int l = 1 , r = n ; while ( l <= r ) { int mid = l + r >> 1 ; if ( a [ mid ] == x ) return 1 ; else if ( a [ mid ] > x ) r = mid - 1 ; else l = mid + 1 ; } return false ; } int main() { cin >> n ; for ( int i = 1 ; i <= n ; i ++ ) { cin >> a [ i ] ; } sort (a + 1 ,a + n + 1) ; cin >> m ; while ( m -- ) { int x ; scanf ("%d" , & x ) ; cout << (find( x ) ? "YES":"NO") << endl ; } return 0; }
정보
- ID
- 1278
- 시간
- 3000ms
- 메모리
- 512MiB
- 난이도
- 7
- 태그
- 제출 기록
- 948
- 맞았습니다.
- 197
- 아이디