AtCoder Beginner Contest 220 F問題 - Distance Sums 2

Source

AtCoder Beginner Contest 220
問題文

問題概要

省略

解法

省略

cLay(version 20210926-1)のコード

C++に変換後のコードはこちら

struct rval{ int sz; ll dist; };
void RerootingId(rval &a){ a = {0, 0}; }
rval RerootingMerge(rval a, rval b){ return {a.sz + b.sz, a.dist + b.dist}; }
rval RerootingEdge(rval a, int EFrom, int ETo){ return a; }
rval RerootingNode(rval a, int Nind){ return {a.sz+1, a.dist+a.sz}; }

int N, A[2d5], B[];
graph g;
rval r[];
{
  rd(N,(A--,B--)(N-1));
  g.setEdge(N,N-1,A,B);
  g.Rerooting(r);
  rep(i,N) wt(r[i].dist);
}

Current time: 2021年12月06日00時15分04秒
Last modified: 2021年09月28日06時59分39秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder AtCoder_Beginner_Contest ABC220 ABC_F
トップページに戻る

Logged in as: unknown user (not login)

ログイン: