이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "railroad.h"
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll INF = 1e18;
long long plan_roller_coaster(std::vector<int> s, std::vector<int> t) {
int n = (int) s.size();
vector<int> bin;
for (int i = 0; i < n; i++) {
bin.push_back(s[i]);
bin.push_back(t[i]);
}
sort(bin.begin(),bin.end());
bin.erase(unique(bin.begin(),bin.end()),bin.end());
int K = bin.size();
vector<vector<int>> in(K); vector<int> out(K);
for (int i = 0; i < n; i++) {
int u = lower_bound(bin.begin(),bin.end(),t[i])-bin.begin(); int v = lower_bound(bin.begin(),bin.end(),s[i])-bin.begin();
assert(u < K && v < K);
in[u].push_back(v); out[v]++;
}
int a = 0, b = 0, c = 0;
for (int u = 0; u < K; u++) {
int deg = in[u].size() - out[u];
if (deg == 1) a++;
else if (deg == -1) b++;
else if (deg != 0) c++;
}
// cout << a << " " << b << " " << c << "\n";
if (a == 1 && b == 1 && c == 0) return 0;
// vector<int> res;
// while (!st.empty()) {
// for (int )
// }
return 1;
}
| # | 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... |