// Parcijalno rjesenje - 1. podzadatak (4 boda)

/*
    Za rjesenje prvog podzadatka, bilo je dovoljno odraditi simulaciju.
    C++ omogucava brisanje elementa na zeljenoj poziciji koristeci se erase() funkcijom.
*/

#include <iostream>
#include <vector>

using namespace std;

const int mxn = 2e5 + 5;
int N, Q;
vector<int> g(mxn);
vector<int> ans;

int main() {
    cin >> N >> Q;

    for (int i = 0; i < N; i++) {
        cin >> g[i];
    }

    for (int i = 0; i < Q; i++) {
        int p;
        cin >> p;

        int el = g[p - 1];
        g.erase(g.begin() + p - 1); // Brise se element na zeljenoj poziciji

        ans.push_back(el);
    }

    // Ispis rezultata
    for (auto& x: ans) {
        cout << x << " ";
    }

    return 0;
}
