Submission #92503

#TimeUsernameProblemLanguageResultExecution timeMemory
92503antimirageDuathlon (APIO18_duathlon)C++14
8 / 100
85 ms11000 KiB
#include <bits/stdc++.h> #define fr first #define sc second #define mk make_pair #define pb emplace_back #define all(s) s.begin(), s.end() using namespace std; const int N = 1e5 + 5; int n, m, x, y, u[N]; long long cn; vector < vector <int> > g; long long ans; bool fl; void dfs (int v, int p = 0) { cn++; u[v] = 1; for (auto to : g[v]) { if (u[to] && to != p) fl = 1; if (u[to]) continue; dfs(to, v); } } main() { cin >> n >> m; g.resize(n + 1); for (int i = 1; i <= m; i++) { scanf("%d%d", &x, &y); g[x].pb(y); g[y].pb(x); } for (int i = 1; i <= n; i++) { if (u[i]) continue; cn = 0; fl = false; dfs(i); if (fl) ans += cn * 1ll * (cn - 1) * (cn - 2); else ans += cn * 1ll * (cn - 1) * (cn - 2) / 3; } cout << ans << endl; }

Compilation message (stderr)

count_triplets.cpp:35:6: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
 main() 
      ^
count_triplets.cpp: In function 'int main()':
count_triplets.cpp:42:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d%d", &x, &y);
   ~~~~~^~~~~~~~~~~~~~~~
#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...