Submission #71941

#TimeUsernameProblemLanguageResultExecution timeMemory
71941KLPPDuathlon (APIO18_duathlon)C++14
0 / 100
196 ms35656 KiB
#include<iostream> #include<stdio.h> #include<vector> #include<queue> #include<algorithm> using namespace std; typedef long long int lld; lld DP[1000000]; bool visited[1000000]; vector<int>nei[1000000]; lld ans; void DFS(int node,lld dist){ visited[node]=true; lld sum=0; lld square=0; lld totaldist=0; for(int i=0;i<nei[node].size();i++){ int v=nei[node][i]; if(!visited[v]){ DFS(v,dist+1); sum+=DP[v]; square+=DP[v]*DP[v]; } } DP[node]=sum+1; ans+=sum*sum-square; ans+=dist*(dist-1); } int main(){ int n,m; cin>>n>>m; for(int i=0;i<m;i++){ int x,y; cin>>x>>y; x--;y--; nei[x].push_back(y); nei[y].push_back(x); } ans=0; for(int i=0;i<n;i++){ DP[i]=-1; visited[i]=false; } for(int i=0;i<n;i++){ if(!visited[i]){ DFS(i,0); } }//for(int i=0;i<n;i++)cout<<sumdist[i]<<endl; cout<<ans<<endl; return 0; }

Compilation message (stderr)

count_triplets.cpp: In function 'void DFS(int, lld)':
count_triplets.cpp:18:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=0;i<nei[node].size();i++){
              ~^~~~~~~~~~~~~~~~~
count_triplets.cpp:17:6: warning: unused variable 'totaldist' [-Wunused-variable]
  lld totaldist=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...