提出 #69317418
ソースコード 拡げる
#include <iostream> #include <string> #include <algorithm> #include <functional> #include <vector> #include <stack> #include <queue> #include <set> #include <map> #include <tuple> #include <cstdio> #include <cmath> #include <cassert> #define rep(i, n) for(i = 0; i < n; i++) #define int long long using namespace std; typedef pair<int, int> P; int n, K; int a[300000], b[300000], c[300000]; signed main() { int i; cin >> n >> K; rep(i, n) { cin >> a[i] >> b[i] >> c[i]; } priority_queue<P, vector<P>, greater<P>> que; //(t, cnt) int cnt = 0, t = 0; rep(i, n) { t = max(t, a[i]); while (cnt + c[i] > K) { P now = que.top(); que.pop(); cnt -= now.second; t = max(t, now.first); } cout << t << endl; cnt += c[i]; que.push(P(t + b[i], c[i])); } return 0; }
提出情報
提出日時 | |
---|---|
問題 | D - Long Waiting |
ユーザ | startcpp |
言語 | C++ 20 (gcc 12.2) |
得点 | 400 |
コード長 | 830 Byte |
結果 | AC |
実行時間 | 456 ms |
メモリ | 14380 KiB |
ジャッジ結果
セット名 | Sample | All | ||||
---|---|---|---|---|---|---|
得点 / 配点 | 0 / 0 | 400 / 400 | ||||
結果 |
|
|
セット名 | テストケース |
---|---|
Sample | 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt |
All | 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt |
ケース名 | 結果 | 実行時間 | メモリ |
---|---|---|---|
00-sample-01.txt | AC | 1 ms | 3448 KiB |
00-sample-02.txt | AC | 1 ms | 3472 KiB |
00-sample-03.txt | AC | 1 ms | 3540 KiB |
01-01.txt | AC | 145 ms | 5704 KiB |
01-02.txt | AC | 456 ms | 11344 KiB |
01-03.txt | AC | 163 ms | 6092 KiB |
01-04.txt | AC | 155 ms | 5864 KiB |
01-05.txt | AC | 440 ms | 14380 KiB |
01-06.txt | AC | 436 ms | 14212 KiB |
01-07.txt | AC | 71 ms | 4960 KiB |
01-08.txt | AC | 448 ms | 14324 KiB |
01-09.txt | AC | 429 ms | 10520 KiB |
01-10.txt | AC | 429 ms | 10452 KiB |
01-11.txt | AC | 428 ms | 10592 KiB |
01-12.txt | AC | 430 ms | 10524 KiB |
01-13.txt | AC | 430 ms | 10460 KiB |
01-14.txt | AC | 427 ms | 10484 KiB |