# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
920718 | hasuhasuiro | Autobahn (COI21_autobahn) | C++17 | 971 ms | 99628 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#pragma GCC target("avx2")
#pragma GCC optimize("O3")
#pragma GCC optimize("unroll-loops")
#include <iostream>
#include <vector>
#include <map>
#include <set>
#include <algorithm>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int N, K, X;
cin >> N >> K >> X;
vector l(N, 0), r(N, 0), t(N, 0);
for(int i = 0; i < N; i++) { cin >> l[i] >> t[i] >> r[i]; r[i]++; }
/* 座標圧縮用の座標 */
vector P(0, 0);
for(int i = 0; i < N; i++) { P.push_back(l[i]), P.push_back(r[i]); } /* 各区間の始点終点 */
for(int i = 0; i < N; i++) { if(l[i]+t[i] < r[i]) { P.push_back(l[i]+t[i]); } } /* 追加料金のかかる区間の始点 */
sort(begin(P), end(P));
P.erase(unique(begin(P), end(P)), end(P));
map<int, int> mp2;
for(int i = 0; i < (int)size(P); i++) { mp2[P[i]] = 1; }
int sizep(size(P));
for(int i = 0; i < sizep; i++) {
P.push_back(P[i]+X), P.push_back(P[i]-X);
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |