Submission
Status:
[PPPPPPPPPPPPPPPPPPPP]
Subtask/Task Score:
{100/100}
Score: 100
User: achinhchin
Problemset: ฮีโร่และมอนสเตอร์
Language: cpp
Time: 0.237 second
Submitted On: 2026-02-26 02:45:08
#include<iostream>
#include<algorithm>
#include<utility>
#include<vector>
#include<stack>
#include<queue>
#define f first
#define s second
#define fr front()
#define bg begin()
#define en end()
using namespace std;
typedef long long l;
typedef pair<l,l> pl;
typedef pair<l,pair<l,l>> ppl;
typedef vector<l> vl;
typedef vector<pair<l,l>> vpl;
const l LM=2e9;
l n,m,sm,i;
int main(){
cin.tie(nullptr)->sync_with_stdio(0);
cin>>n>>m;vl H(n),A(m+2);vpl M(m);
for(l& i:H)cin>>i; for(auto& i:M)cin>>i.f>>i.s;
sort(M.bg,M.en);for(A[1]=M[0].s,i=1;i<=m;A[++i]=A[i]+M[i].s);
/*cout<<"===============\n";
for(i=0;i<m;i++)cout<<M[i].f<<' '<<M[i].s<<' '<<A[i]<<'\n';
cout<<"===============\n";*/
for(auto i:H)cout<<A[upper_bound(M.begin(),M.end(),make_pair(i,LM))-M.begin()]<<'\n';
}