Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- int arrN[1000001];
- int arrK[1000001];
- using namespace std;
- int main(){
- freopen ("bins.in", "r", stdin);
- freopen ("bins.out", "w", stdout);
- int N, K, Amin, Amax, A;
- bool yn;
- yn = false;
- cin >> N >> K;
- for (int i = 1; i <= N; i++){
- cin >> arrN[i];
- }
- for(int i = 1; i <= K; i++){
- cin >> arrK[i];
- }
- for(int i = 1; i <= K; i++){
- A = N/2 + 1;
- if(arrK[i] <= arrN[N-1] && arrK[i] >= arrN[1]){
- for ( ; true; ){
- if(arrK[i] > arrN[A]){
- Amin = A;
- Amax = N;
- } else {
- Amin = 1;
- Amax = A;
- }
- if(Amax - Amin == 1){
- if(arrK[i] == arrN[Amax] || arrK[i] == arrN[Amin]){
- cout << "YES" << endl;
- break;
- } else {
- cout << "NO" << endl;
- break;
- }
- }
- A = (Amax-Amin) / 2;
- }
- } else {
- cout << "NO" << endl;
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement