Submission

Status:

[PPPPPPPPPPPPPPPPPPPP]

Subtask/Task Score:

{100/100}

Score: 100

User: asamarum70

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

Language: cpp

Time: 0.284 second

Submitted On: 2025-12-12 01:17:36

#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define fr(i,a,b,c) for(int i = a;i<b;i+=c)
#define fre(i,a,b,c) for(int i = a;i>=b;i-=c)
#define fs first
#define sc second
#define all(a) a.begin(),a.end()
#define IINF 2000000005
#define LINF 1000000000000000005
#define MOD 1000000007
#define str string
#define endl '\n'
using pii = pair<int,int>;
using pll = pair<ll,ll>;
using tiii = tuple<int,int,int>;
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
int uid(int a, int b) { return uniform_int_distribution<int>(a,b)(rng); }
ll uld(ll a, ll b) { return uniform_int_distribution<ll>(a,b)(rng); }

int main(){
    ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
    int n,m;cin >> n >> m;
    vector<int> a(n);
    fr(i,0,n,1)cin >> a[i];
    vector<pii> p(m);
    fr(i,0,m,1)cin >> p[i].fs >> p[i].sc;
    sort(p.begin(),p.end());
    vector<ll> pf(m+1);
    fr(i,1,m+1,1)pf[i] = p[i-1].sc + pf[i-1];
    fr(i,0,n,1){
        int it = upper_bound(p.begin(),p.end(),make_pair(a[i],IINF)) - p.begin();
        cout << pf[it] << endl;
    }
}