#include#define ll long long #define _rep(i,a,b) for( int i=(a); i<=(b); ++i) #define _down(i,a,b) for( int i=(a); i>=(b); --i) #define IOS ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); using namespace std; const int mx = 1e6 + 9; int n, m, a[mx], ans; void solve() { cin >> n >> m; _rep(i, 1, n) cin >> a[i]; while(m--) { int x; cin >> x; int ans = lower_bound(a+1,a+1+n,x)-a; if(a[ans]!=x) cout<<"-1 "; else cout< #include#define ll long long #define _rep(i,a,b) for( int i=(a); i<=(b); ++i) #define _down(i,a,b) for( int i=(a); i>=(b); --i) #define IOS ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); using namespace std; const int mx = 1e6 + 9; int n, m, a[mx], ans; int findd(int a[], int l, int r, int x) { if(l == r) { if(a[l] == x) return l; else return -1; } int mid = (l + r) / 2; if(x <= a[mid]) { findd(a, l , mid, x); }else if(a[mid] < x) { findd(a, mid + 1, r, x); } } void solve() { cin >> n >> m; _rep(i, 1, n) cin >> a[i]; while(m--) { int x; cin >> x; cout << findd(a, 1, n, x) << " "; // int ans = lower_bound(a+1,a+1+n,x)-a; // if(a[ans]!=x) cout<<"-1 "; // else cout< } } int main() { IOS; solve(); //test(); return 0; }



