Submission

Status:

[PPPPPPPPPPPPPPPPPPPP]

Subtask/Task Score:

{100/100}

Score: 100

User: AugusEiEi

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

Language: cpp

Time: 0.215 second

Submitted On: 2026-03-22 17:26:56

#include<bits/stdc++.h>
using namespace std;

typedef long long ll;

int main(){
  ios_base::sync_with_stdio(0); cin.tie(0);
  int n,m;cin>>n>>m;
  vector<ll>hero(n);
  for(int i=0;i<n;i++){
    cin>>hero[i];
  }
  vector<pair<ll,ll>>mon(m);
  for(int i=0;i<m;i++){
    cin>>mon[i].first>>mon[i].second;
  }
  sort(mon.begin(),mon.end());
  for(int i=1;i<m;i++){
    mon[i].second+=mon[i-1].second;
  }
  for(int i=0;i<n;i++){
    int u=upper_bound(mon.begin(),mon.end(),make_pair(hero[i],LLONG_MAX))-mon.begin();
    if(u!=0) cout<<mon[u-1].second<<'\n';
    else cout<<0<<'\n';
  }
}