Submission
Status:
[PPPPPPPPPPPPPPPPPPPP]
Subtask/Task Score:
{100/100}
Score: 100
User: C12
Problemset: ฮีโร่และมอนสเตอร์
Language: cpp
Time: 0.346 second
Submitted On: 2026-01-01 22:01:01
#include <bits/stdc++.h>
using namespace std;
#define f first
#define s second
#define pii pair<ll,ll>
#define puii pair<ull,ull>
#define piii pair<ll,pii>
#define ll long long
#define ull unsigned long long
#define mp make_pair
#define mpiii(a,b,c) make_pair(a,make_pair(b,c));
// ll mod = 1000000007;
void solve(){
int n,m;
cin >> n >> m;
vector<ll>h(n),c(m);
vector<pii>mon(m);
int t,tt;
for(int i = 0;i < n;i++){
cin >> h[i];
}
for(int i = 0;i < m;i++){
cin >> t >> tt;
mon[i] = mp(t,tt);
}
sort(mon.begin(),mon.end());
c[0] = mon[0].s;
for(int i = 1;i < m;i++){
c[i] = c[i-1] + mon[i].s;
}
for(int i = 0;i < n;i++){
auto pos = upper_bound(mon.begin(),mon.end(),mp(h[i],LLONG_MAX));
ll index = pos - mon.begin() - 1;
if(index < 0){
cout << 0 << '\n';
}
else{
cout << c[index] << '\n';
}
}
return;
}
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
ll q;
// cin >> q;
// while(q--)
solve();
return 0;
}
/*
4 5
0 4 2 6
1 2
1 3
5 4
2 5
3 6
*/