# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1010636 | tarpent | 거래 (IZhO13_trading) | C++14 | 1 ms | 348 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include<bits/stdc++.h>
using namespace std;
const int maxn = 3e5+7;
#define ll long long
ll n,m,k,a,b,c;
pair<ll,ll> val[maxn];
priority_queue<pair<ll,ll>> vre;
int main(){
cin>>n>>m;
for(int i = 0; i<m; i++){
cin>>a>>b>>c;
val[a]={b,c};
}
pair<ll,ll> tre;
for(int i = 1; i<n+1; i++){
bool ch = false;
if(!vre.empty()){
tre=vre.top();
vre.pop();
vre.push({tre.first+1,tre.second});
}
if(val[i].second!=0){
vre.push({val[i].second,i});
}
while(val[vre.top().second].first<i && !vre.empty()){
vre.pop();
ch=true;
}
if(ch && !vre.empty()){
tre=vre.top();
vre.pop();
vre.push({tre.first+(i-tre.second),tre.second});
}
if (!vre.empty()) cout<<vre.top().first<<' ';
else cout<<0<<' ';
}
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |