Submission
Status:
[PP-SSSSSSSSSSSSSSSSS]
Subtask/Task Score:
{0/100}
Score: 0
User: august
Problemset: ฮีโร่และมอนสเตอร์
Language: cpp
Time: 0.002 second
Submitted On: 2026-03-18 19:16:59
#include <bits/stdc++.h>
using namespace std;
int main() {
cin.tie(0)->sync_with_stdio(0);
int n, m;
cin>> n>> m;
vector<int> h(n);for (int i=0; i<n; i++) cin>> h[i];
vector<pair<int,int>> bs;
for (int i=0; i<m; i++) {
int p,c;
cin>> p>> c;
bs.push_back({p,c});
}
sort(bs.begin(), bs.end());
vector<int> pf(m,0);
for (int i=0; i<m; i++) {
if (i!=0) pf[i] += pf[i-1];
pf[i] += bs[i].second;
}
for (int i=0; i<n; i++) {
int l=0, r=m-1;
while (l<=r) {
int mid=(r-l)/2+l;
if (bs[mid].first <= h[i]) l=mid+1;
else r=mid-1;
}
l--;
if (l<0) cout<< 0<< '\n';
else cout<< pf[l]<< '\n';
}
}