Submission #1636111
Source Code Expand
#include <bits/stdc++.h> using ll = long long; // #define int ll #define FOR(i, a, b) for (int i = (a); i < int(b); ++i) #define RFOR(i, a, b) for (int i = (b)-1; i >= int(a); --i) #define rep(i, n) FOR(i, 0, n) #define rep1(i, n) FOR(i, 1, int(n) + 1) #define rrep(i, n) RFOR(i, 0, n) #define rrep1(i, n) RFOR(i, 1, int(n) + 1) #define all(c) begin(c), end(c) // const int MOD = 1000000007; template <typename T> void __print__(std::ostream &os, const char *, const char *tail, const T &fst) { os << fst << tail; } template <typename Fst, typename... Rst> void __print__(std::ostream &os, const char *del, const char *tail, const Fst &fst, const Rst &... rst) { os << fst << del; __print__(os, del, tail, rst...); } #ifdef LOCAL #define dump(...) \ do { \ std::ostringstream os; \ os << __LINE__ << ":\t" << #__VA_ARGS__ << " = "; \ __print__(os, ", ", "\n", __VA_ARGS__); \ std::cerr << os.str(); \ } while (0) #else #define dump(...) #endif template <typename Fst, typename... Rst> void println(const Fst &fst, const Rst &... rst) { __print__(std::cout, "\n", "\n", fst, rst...); } template <typename Fst, typename... Rst> void print(const Fst &fst, const Rst &... rst) { __print__(std::cout, " ", "\n", fst, rst...); } template <typename iter> void println_(iter bgn, iter end) { while (bgn != end) println(*bgn++); } template <typename iter> void print_(iter bgn, iter end) { while (bgn != end) { std::cout << *bgn++; std::cout << (bgn == end ? "\n" : " "); } } int _ = (std::cout.precision(10), std::cout.setf(std::ios::fixed), std::cin.tie(0), std::ios::sync_with_stdio(0), 0); template <typename T> std::vector<T> ndarray(int n, T v) { return std::vector<T>(n, v); } template <typename... Args> auto ndarray(int n, Args... args) { auto val = ndarray(args...); return std::vector<decltype(val)>(n, move(val)); } template <typename T> bool umax(T &a, const T &b) { return a < b ? a = b, true : false; } template <typename T> bool umin(T &a, const T &b) { return a > b ? a = b, true : false; } using namespace std; int n1, m1; int n2, m2; int g1[1000][1000]; int g2[1000][1000]; int main() { while (cin >> n1 >> m1) { rep(i, n1) rep(j, n1) g1[i][j] = g1[j][i] = i == j ? 0 : 1e9; rep(i, m1) { int a, b; cin >> a >> b; g1[a][b] = g1[b][a] = 1; } rep(k, n1) rep(i, n1) rep(j, n1) g1[i][j] = min(g1[i][j], g1[i][k] + g1[k][j]); int d1 = 0; rep(i, n1) rep(j, n1) d1 = max(d1, g1[i][j]); cin >> n2 >> m2; rep(i, n2) rep(j, n2) g2[i][j] = g2[j][i] = i == j ? 0 : 1e9; rep(i, m2) { int a, b; cin >> a >> b; g2[a][b] = g2[b][a] = 1; } rep(k, n2) rep(i, n2) rep(j, n2) g2[i][j] = min(g2[i][j], g2[i][k] + g2[k][j]); int d2 = 0; rep(i, n2) rep(j, n2) d2 = max(d2, g2[i][j]); dump(d1, d2); print(max({d1, d2, (d1 + 1) / 2 + (d2 + 1) / 2 + 1}), d1 + 1 + d2); } }
Submission Info
Submission Time | |
---|---|
Task | C - 直径 |
User | tubo28 |
Language | C++14 (Clang 3.8.0) |
Score | 0 |
Code Size | 3373 Byte |
Status | CE |
Compile Error
./Main.cpp:1:10: fatal error: 'bits/stdc++.h' file not found #include <bits/stdc++.h> ^ 1 error generated.