Submission
Status:
[PPPPPPPPPPPPPPPPPPPP]
Subtask/Task Score:
{100/100}
Score: 100
User: Gump2011
Problemset: ฮีโร่และมอนสเตอร์
Language: cpp
Time: 0.246 second
Submitted On: 2026-03-08 18:09:30
#include <bits/stdc++.h>
using namespace std;
#define ll long long
int main() {
ios::sync_with_stdio(0), cin.tie(0);
int n, m;
cin >> n >> m;
vector<ll> h(n);
for(int i=0;i<n;i++){
cin >> h[i];
}
vector<pair<ll,ll>> mons(m);
for(int i=0;i<m;i++){
cin >> mons[i].first >> mons[i].second;
}
sort(mons.begin(), mons.end());
vector<ll> v(m+1, 0);
for(int i=0;i<m;i++){
v[i+1] = v[i] + mons[i].second;
}
for(int i=0;i<n;i++){
auto it = upper_bound(mons.begin(), mons.end(), make_pair(h[i], LLONG_MAX));
int idx = it - mons.begin();
cout << v[idx] << '\n';
}
return 0;
}