제출 #277044

#제출 시각아이디문제언어결과실행 시간메모리
277044tinjyu철인 이종 경기 (APIO18_duathlon)C++14
0 / 100
1055 ms1048580 KiB
#include <iostream> using namespace std; long long int son[100005],ans,cnt,tmp[100005],n,m,road[100005],map[300005][2]; void dfs(int x,int fa) { son[x]=1; long long int g=road[x]; while(g!=-1) { long long int now=map[g][0]; if(now!=fa) { dfs(now,x); son[x]+=son[now]; } g=map[g][1]; } return ; } void find(int x,int fa) { cnt=0; long long int sum=0; long long int g=road[x]; while(g!=-1) { long long int now=map[g][0]; if(now!=fa) { ans+=(n-son[now]-1)*son[now]; } g=map[g][1]; } ans+=(n-son[x])*(son[x]-1); g=road[x]; while(g!=-1) { long long int now=map[g][0]; if(now!=fa) { find(now,x); } g=map[g][1]; } return ; } int main(){ cin>>n>>m; for(int i=1;i<=n;i++)road[i]=-1; for(int i=1;i<=m;i++) { int u,v; cin>>u>>v; map[i*2][0]=v; map[i*2][1]=road[u]; road[u]=i*2; map[i*2+1][0]=i; map[i*2+1][1]=road[v]; road[v]=i*2+1; } dfs(1,-1); find(1,-1); cout<<ans<<endl; return 0; }

컴파일 시 표준 에러 (stderr) 메시지

count_triplets.cpp: In function 'void find(int, int)':
count_triplets.cpp:23:16: warning: unused variable 'sum' [-Wunused-variable]
   23 |  long long int sum=0;
      |                ^~~
#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...