Submission
Status:
[PPPxSSSSSSSSSSSSSSSS]
Subtask/Task Score:
{0/100}
Score: 0
User: navysrimuang
Problemset: ฮีโร่และมอนสเตอร์
Language: cpp
Time: 0.003 second
Submitted On: 2026-03-13 13:18:26
#include<bits/stdc++.h>
using namespace std;
using ll = long long;
//dp[i] = total that h[i] can gain c[i];
int mx = INT_MIN;
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];
mx = max(mx,h[i]);
}
vector<ll> dp(mx+1,0);
for(int i = 0;i<m;i++){
int p,c;
cin >> p >> c;
dp[p] += c;
}
for(int i = 1;i<mx;i++){
dp[i+1] += dp[i];
}
for(int i = 0;i<n;i++) cout << dp[h[i]] << "\n";
return 0;
}