Submission
Status:
[PPPPPPPPPPPPPPPPPPPP]
Subtask/Task Score:
{100/100}
Score: 100
User: 555eiei
Problemset: ฮีโร่และมอนสเตอร์
Language: cpp
Time: 0.212 second
Submitted On: 2025-11-05 17:53:04
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int, int> pii;
int main(){
cin.tie(nullptr)->sync_with_stdio(0);
int n,m; cin >> n >> m;
vector<int> heroes(n);
vector<pii> monsters(m);
for (auto &x : heroes) cin >> x;
for (auto &[p,c] : monsters) cin >> p >> c;
sort(monsters.begin(), monsters.end());
vector<ll> qs(m+1);
for (int i=1; i<=m; i++) qs[i] = qs[i-1] + monsters[i-1].second;
for (int i=0; i<n; i++){
int idx = upper_bound(monsters.begin(), monsters.end(), make_pair(heroes[i], INT_MAX)) - monsters.begin();
cout << qs[idx] << '\n';
}
return 0;
}