# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1029648 | 12345678 | Roller Coaster Railroad (IOI16_railroad) | C++17 | 451 ms | 53552 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.
#include "railroad.h"
#include <bits/stdc++.h>
using namespace std;
const int nx=2e5+5;
int n, T, cnts, cntt, lst=INT_MAX;
map<int, int> mp;
vector<int> vt[2*nx], vs[2*nx];
long long plan_roller_coaster(std::vector<int> s, std::vector<int> t) {
n=s.size();
for (int i=0; i<n;i ++) mp[s[i]]=mp[t[i]]=0;
for (auto &[x, y]:mp) y=++T;
for (int i=0; i<n;i ++) vs[mp[s[i]]].push_back(i), vt[mp[t[i]]].push_back(i); //cout<<"mp "<<mp[s[i]]<<' '<<mp[t[i]]<<'\n';
for (int i=2*n; i>=1; i--)
{
for (auto x:vs[i]) cnts++;
if (vt[i].size()>1) lst=i;
for (auto x:vt[i])
{
cntt++;
int vl=cnts;
if (s[x]>=t[x]&&s[x]<lst) vl--;
//cout<<"x "<<x<<' '<<vl<<' '<<cntt<<'\n';
if (vl<cntt-1) return 1;
}
if (!vt[i].empty()) lst=i;
}
return 0;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |