230982026-01-16 12:02:59khn0820G (40 pont)cpp17Hibás válasz 0/40174ms7476 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
	int n, m;
    cin>>n>>m;
    vector<long long int>haz(n+1, 0);
    map<long long int, int>k;
    for(int i=1; i<=n; i++){
        cin>>haz[i];
        if(k[haz[i]]>0) k[haz[i]]=min(i, k[haz[i]]);
        else k[haz[i]]=i;
    }
    sort(haz.begin(), haz.end());
    int mini=k[haz[n]];
    for(int i=n-1; i>0; i--){
        k[haz[i]]=min(mini, k[haz[i]]);
        mini=k[haz[i]];
    }
    for(int i=1; i<=m; i++){
        long long int t;
        cin>>t;
        int e=1; int v=n;
        while(e!=v){
            int mi=(e+v)/2;
            if(haz[mi]<t) e=mi+1;
            else v=mi;
        }
         cout<<k[haz[e]];
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/40
1Hibás válasz0/01ms316 KiB
2Hibás válasz0/0123ms2868 KiB
3Hibás válasz0/21ms316 KiB
4Hibás válasz0/21ms316 KiB
5Hibás válasz0/23ms372 KiB
6Hibás válasz0/24ms316 KiB
7Hibás válasz0/37ms452 KiB
8Hibás válasz0/3173ms7352 KiB
9Hibás válasz0/3171ms7356 KiB
10Hibás válasz0/3171ms7408 KiB
11Hibás válasz0/4172ms7476 KiB
12Hibás válasz0/4171ms7476 KiB
13Hibás válasz0/4174ms7440 KiB
14Hibás válasz0/4170ms7476 KiB
15Hibás válasz0/4171ms7476 KiB