Submission
Status:
[-SSSSSSSSSSSSSSSSSSS]
Score: 0
User: mydKN
Problemset: ฮีโร่และมอนสเตอร์
Language: cpp
Time: 0.002 second
Submitted On: 2025-03-31 10:02:11
#include<bits/stdc++.h>
using namespace std;
using ll = long long;
using pll = pair<ll, ll>;
const ll maxn = 2e5+5;
const ll maxm = 8e5+5;
const ll inf = 9e18;
ll n, m;
ll arr[maxn];
pll qs[maxm];
int main(){
ios_base::sync_with_stdio(0);cin.tie(0);
cin >> n >> m;
for(ll i=0;i<n;++i){
cin >> arr[i];
}
for(ll i=0;i<m;++i){
cin >> qs[i].first >> qs[i].second;
}
sort(qs, qs+m);
for(ll i=1;i<m;++i){
qs[i].second += qs[i-1].second;
}
// for(ll i=0;i<m;++i) cout << qs[i].first << " " << qs[i].second << "\n";
for(ll i=0;i<n;++i){
pll x = {arr[i], inf};
auto it = upper_bound(qs, qs+m, x);
if(it->first > arr[i]) it--;
cout << it->second << "\n";
}
}