| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1335275 | aaaaaaaa | Duathlon (APIO18_duathlon) | C++20 | 43 ms | 9956 KiB |
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int mxN = 2e5 + 100;
vector<int> adj[mxN];
int n, m, ans = 0, s[mxN];
void dfs(int u = 1, int par = 0){
s[u] = 1;
int total = 0;
for(auto it : adj[u]){
if(it ^ par){
dfs(it, u);
ans += total * s[it];
total += s[it];
}
}
int left = n - total - 1;
ans += left * total;
s[u] += total;
}
signed main(){
ios_base::sync_with_stdio(0);
cin.tie(nullptr); cout.tie(nullptr);
cin >> n >> m;
assert(n - 1 == m);
for(int i = 1, u, v ; i <= m; ++i){
cin >> u >> v;
adj[u].push_back(v);
adj[v].push_back(u);
}
dfs();
cout << ans * 2ll << "\n";
return 0;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
