Submission

Status:

[PPPPPPPPPPPPPPPPPPPP]

Subtask/Task Score:

{100/100}

Score: 100

User: 12345678

Problemset: ฮีโร่และมอนสเตอร์

Language: cpp

Time: 0.229 second

Submitted On: 2025-11-27 21:03:00

#include <bits/stdc++.h>

using namespace std;

#define ll long long

const int nx=8e5+5;

ll n, m, h[nx];
pair<ll, ll> mns[nx];

int main()
{
    cin.tie(NULL)->sync_with_stdio(false);
    cin>>n>>m;
    for (int i=1; i<=n; i++) cin>>h[i];
    for (int i=1; i<=m; i++) cin>>mns[i].first>>mns[i].second;
    sort(mns+1, mns+m+1);
    for (int i=1; i<=m; i++) mns[i].second+=mns[i-1].second;
    for (int i=1; i<=n; i++) cout<<prev(lower_bound(mns+1, mns+m+1, make_pair(h[i], LLONG_MAX)))->second<<'\n';
}

/*
4 5
1 4 2 6
1 2
1 3
5 4
2 5
3 6

*/