제출 #790303

#제출 시각아이디문제언어결과실행 시간메모리
790303Dan4Life철인 이종 경기 (APIO18_duathlon)C++17
10 / 100
459 ms1048576 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define pb push_back #define sz(a) (int)a.size() #define all(a) begin(a),end(a) using ar = array<int,2>; const int mxN = (int)1e3+10; int n, m, VV[mxN]; vector<int> adj[mxN]; int sub[mxN]; void dfs(int s, int p){ //VV[s]=1; sub[s]=1; for(auto u : adj[s]){ if(u==p) continue; dfs(u,s); sub[s]+=sub[u]; } } int solve(int s){ dfs(s,-1); int tot = sub[s]; int xd = 0; for(auto u : adj[s]) xd+=sub[u]*sub[u]; return (tot-1)*(tot-1)-xd; } int32_t main() { cin >> n >> m; int ans = 0; for(int i = 0; i < m; i++){ int a, b; cin >> a >> b; adj[a].pb(b), adj[b].pb(a); } for(int i = 1; i <= n; i++) if(!VV[i]) ans+=solve(i); cout << ans << "\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...