제출 #829783

#제출 시각아이디문제언어결과실행 시간메모리
829783caganyanmaz철인 이종 경기 (APIO18_duathlon)C++14
8 / 100
75 ms12620 KiB
#include <bits/stdc++.h> #define int int64_t #define pb push_back using namespace std; constexpr static int MXN = 1e5; int n, m; vector<int> g[MXN]; bitset<MXN> visited; int subtree_size[MXN]; int sum; bool dfs(int node, int p) { visited[node] = true; sum++; for (int c : g[node]) { if (c == p) continue; if (visited[c]) return true; if (dfs(c, node)) return true; } return false; } int32_t main() { cin >> n >> m; for (int i = 0; i < m; i++) { int a, b; cin >> a >> b; a--,b--; g[a].pb(b); g[b].pb(a); } int res = 0; for (int i = 0; i < n; i++) { if (!visited[i]) { sum = 0; bool circular = dfs(i, i); if (circular) res += sum * (sum - 1) * (sum - 2); else res += sum * (sum - 1) * (sum - 2) / 3; } } cout << res << "\n"; }
#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...