結果
問題 |
No.2427 Tree Distance Two
|
ユーザー |
|
提出日時 | 2024-12-04 14:53:02 |
言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 191 ms / 2,000 ms |
コード長 | 2,007 bytes |
コンパイル時間 | 3,514 ms |
コンパイル使用メモリ | 248,944 KB |
実行使用メモリ | 22,016 KB |
最終ジャッジ日時 | 2024-12-04 14:53:13 |
合計ジャッジ時間 | 10,356 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 35 |
ソースコード
#if defined(local) #include "./noya/debug.hpp" #else #define debug(...) 42 #endif #include "bits/stdc++.h" using namespace std; #define rep1(a) for (int i = 0; i < a; i++) #define rep2(i, a) for (int i = 0; i < a; i++) #define rep3(i, a, b) for (int i = a; i < b; i++) #define rep4(i, a, b, c) for (int i = a; i < b; i += c) #define overload4(a, b, c, d, e, ...) e #define rep(...) overload4(__VA_ARGS__, rep4, rep3, rep2, rep1)(__VA_ARGS__) #define pb emplace_back template <typename T, typename T2> void cmin(T &x, const T2 &y) { x = x < y ? x : y; } template <typename T, typename T2> void cmax(T &x, const T2 &y) { x = x > y ? x : y; } #include <cstdint> using ll = int64_t; using ull = uint64_t; namespace noya { template <class T> constexpr T infty = 0; template <> constexpr int infty<int> = 1010000000; template <> constexpr ll infty<ll> = 2020000000000000000; template <> constexpr unsigned infty<unsigned> = infty<int>; template <> constexpr ull infty<ull> = infty<ll>; template <> constexpr __int128 infty<__int128> = __int128(infty<ll>) * 2000000000000000000; template <> constexpr double infty<double> = infty<ll>; template <> constexpr long double infty<long double> = infty<ll>; } // namespace noya using vi = vector<int>; using vl = vector<ll>; using pii = pair<int, int>; using pll = pair<ll, ll>; template <class T> using vc = vector<T>; const int INF = 1010000000; const ll LNF = 2020000000000000000; #define sz(x) int((x).size()) #define all(x) begin(x), end(x) #define fi first #define se second namespace noya {} mt19937 rng(time(NULL)); using namespace noya; void solve() { int N; cin >> N; vc<vi> g(N); rep(N - 1) { int a, b; cin >> a >> b; a--; b--; g[a].pb(b); g[b].pb(a); } rep(u, N) { ll ans = 0; for (auto v : g[u]) ans += sz(g[v]) - 1; cout<<ans<<"\n"; } } int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); int t = 1; // cin >> t; while (t--) { solve(); } return 0; }