제출 #1173442

#제출 시각아이디문제언어결과실행 시간메모리
1173442Muhammet철인 이종 경기 (APIO18_duathlon)C++20
0 / 100
30 ms13760 KiB
#include "bits/stdc++.h" using namespace std; #define ll long long #define SZ(s) (int)s.size() const int N = 2e5 + 5; const int M = 1e9 + 7; int n, m, vis[N]; ll ans; vector <int> v[N], v1; void dfs(int x) { vis[x] = true; v1.push_back(x); for(auto i : v[x]) { if(!vis[i]) dfs(i); } } void f(int x, int y, ll cnt) { ans += max(0LL, (1LL * cnt * (cnt + 1))); for(auto i : v[x]) { if(i != y) f(i, x, cnt+1); } } int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cin >> n >> m; for(int i = 1; i <= m; i++) { int u1, u2; cin >> u1 >> u2; v[u1].push_back(u2); v[u2].push_back(u1); } for(int i = 1; i <= n; i++) { if(vis[i]) continue; v1.clear(); dfs(i); for(auto j : v1) { if(SZ(v[j]) == 1) { f(j, 0, -1); break; } } } cout << ans; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...