Submission
Status:
[PP-SSSSSSSSSSSSSSSSS]
Subtask/Task Score:
{0/100}
Score: 0
User: Jirayu.S
Problemset: ฮีโร่และมอนสเตอร์
Language: cpp
Time: 0.002 second
Submitted On: 2026-03-25 14:56:29
#include <bits/stdc++.h>
#define endl '\n'
using namespace std;
using pii = pair<int, int>;
int main(){
ios::sync_with_stdio(false); cin.tie(0);
int n, m; cin >> n >> m;
vector<int> hero(n), power(m),ans(n);
for (int i=0;i<n;i++) cin >> hero[i];
vector<pair<int,int>> mon(m);
for (int i=0;i<m;i++) {
cin >> mon[i].first >> mon[i].second;
}
sort(mon.begin(), mon.end());
vector<long long> coin(m);
coin[0] = mon[0].second;
for (int i=1;i<m;i++){
coin[i] = coin[i-1] + mon[i].second;
}
for (int i = 0;i<m;i++) power[i] = mon[i].first;
for (int i=0;i<n;i++){
int idx = upper_bound(power.begin(), power.end(), hero[i]) - power.begin() - 1;
if (idx < 0) continue;
ans[i] = coin[idx];
}
for (auto x:ans) cout << x << endl;
}