This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
#define mp make_pair
#define pb push_back
#define len(a) (int)a.size()
#define all(a) (a.begin(),a.end())
#define fi first
#define sc second
#define ort(x,y) (x+y)/2
#define endl '\n'
#define FAST ios_base::sync_with_stdio(false);
#define d1(x) cerr<<#x<<":"<<x<<endl;
#define d2(x,y) cerr<<#x<<":"<<x<<" "<<#y<<":"<<y<<endl;
#define d3(x,y,z) cerr<<#x<<":"<<x<<" "<<#y<<":"<<y<<" "<<#z<<":"<<z<<endl;
#define N (int) (5005)
#define M (int) ()
#define inf (int) (1e7)
#define p (1000000007)
#define heap priority_queue
#define mem(a,val) memset(a,val,sizeof(a))
#define y1 asdassa
#define left ind+ind
#define right ind+ind+1
#define mid (l+r)/2
#define time ozco
typedef long long int lli;
typedef pair<int,int> pii;
typedef pair<pii,int> piii;
vector <int> ed[N];
lli n,tut[N],cev1[N],cev2[N],ans,mx;
void dfs(int cur,int back,int dep,int t)
{
tut[dep]++;
for(int i=0;i<len(ed[cur]);i++)
if(ed[cur][i]!=back)
dfs(ed[cur][i],cur,dep+1,t);
}
int main()
{
// freopen("Pansiyonlar.gir","r",stdin);
// freopen("Pansiyonlar.cik","w",stdout);
scanf("%lld",&n);
for(int i=1;i<n;i++)
{
int u,v;
scanf("%d %d",&u,&v);
ed[u].pb(v);
ed[v].pb(u);
}
for(int i=1;i<=n;i++)
{
mem(cev1,0);
mem(cev2,0);
for(int j=0;j<len(ed[i]);j++)
{
dfs(ed[i][j],i,1,i*(j+1));
for(int k=1;k<=n;k++)
{
lli t1=cev1[k];
lli t2=cev2[k];
lli d=tut[k];
ans+=d*t2;
t2+=t1*d;
t1+=d;
cev1[k]=t1;
cev2[k]=t2;
tut[k]=0;
}
}
}
printf("%lld\n",ans);
return 0;
}
Compilation message (stderr)
kon.cpp: In function 'int main()':
kon.cpp:42:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
scanf("%lld",&n);
~~~~~^~~~~~~~~~~
kon.cpp:46:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
scanf("%d %d",&u,&v);
~~~~~^~~~~~~~~~~~~~~
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |