이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
#include "railroad.h"
using namespace std;
const long long inf = 1e18;
long long plan_roller_coaster(vector <int> s, vector <int> t)
{
int n = (int)s.size();
long long ans = inf;
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++)
if (i != j)
{
multiset <pair <int, int> > se;
for (int k = 0; k < n; k++)
if (k != i && k != j)
se.insert({s[k], t[k]});
long long curr_ans = 0;
int curr_t = t[i];
while (!se.empty())
{
auto it = se.lower_bound({curr_t, 0});
if (it != se.begin())
it--;
curr_ans += max(0, curr_t - it->first);
curr_t = it->second;
se.erase(it);
}
curr_ans += max(0, curr_t - s[j]);
ans = min(ans, curr_ans);
}
return ans;
}
/*
int n;
vector <int> s, t;
int main()
{
cin >> n;
s.resize(n);
t.resize(n);
for (int i = 0; i < n; i++)
cin >> s[i] >> t[i];
cout << plan_roller_coaster(s, t) << endl;
}
*/
# | 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... |