239292026-02-01 11:00:05abcdGladiátorok (40 pont)cpp17Elfogadva 40/40316ms4404 KiB
#include <bits/stdc++.h>
using namespace std;
using pii=pair<int,int>;

int main(){
    int n,q;cin>>n>>q;
    vector<pii> nn(n);
    for(int i=0;i<n;i++){
        cin>>nn[i].first>>nn[i].second;
    }
    sort(nn.begin(),nn.end(),[&](pii a,pii b){
        if(a.first==b.first)return a.second>b.second;
        return a.first<b.first;
    });
    vector<int> pref(n);
    int cnt=0;
    for(int i=0;i<n;i++){
        auto [a,b]=nn[i];
        int diff=max(0,a-cnt);
        if(i==0)pref[0]=diff;
        else pref[i]=pref[i-1]+diff;
        cnt+=diff;
        cnt+=b;
    }
    while(q--){
        int x;cin>>x;
        cout<<upper_bound(pref.begin(),pref.end(),x)-pref.begin()<<' ';
    }
    cout<<'\n';
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base40/40
1Elfogadva0/01ms512 KiB
2Elfogadva0/056ms1076 KiB
3Elfogadva2/22ms316 KiB
4Elfogadva2/22ms316 KiB
5Elfogadva2/28ms484 KiB
6Elfogadva2/28ms500 KiB
7Elfogadva2/28ms416 KiB
8Elfogadva2/28ms492 KiB
9Elfogadva2/29ms536 KiB
10Elfogadva2/29ms472 KiB
11Elfogadva2/235ms812 KiB
12Elfogadva2/2199ms3636 KiB
13Elfogadva2/2246ms2708 KiB
14Elfogadva2/2316ms4376 KiB
15Elfogadva2/2303ms4256 KiB
16Elfogadva2/2307ms4404 KiB
17Elfogadva2/2303ms4404 KiB
18Elfogadva2/2263ms3628 KiB
19Elfogadva2/2270ms3616 KiB
20Elfogadva2/2256ms3628 KiB
21Elfogadva2/2282ms3636 KiB
22Elfogadva2/2263ms3636 KiB