| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1353544 | DanerZein | Duathlon (APIO18_duathlon) | C++20 | 1116 ms | 1114112 KiB |
#include <bits/stdc++.h>
using namespace std;
typedef vector<int> vi;
typedef long long ll;
const int MAX_N=1e5+10;
vector<vi> G;
ll sub[MAX_N];
int n;
ll res=0;
void dfs(int u,int p){
sub[u]=1;
for(auto &v:G[u]){
if(v!=p){
dfs(v,u);
sub[u]+=sub[v];
}
}
for(auto &v:G[u]){
if(v!=p){
res+=sub[v]*(sub[u]-sub[v]-1);
res+=2*sub[v]*(n-sub[u]);
}
}
}
int main(){
int m; cin>>n>>m;
G.resize(n);
for(int i=0;i<m;i++){
int a,b; cin>>a>>b;
a--; b--;
G[a].push_back(b);
G[b].push_back(a);
}
dfs(0,0);
cout<<res<<endl;
}
| # | 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... | ||||
