AtCoder Beginner Contest 187 E問題 - Through Path

Source

AtCoder Beginner Contest 187
問題文

問題概要

省略

解法

省略

cLayversion 20210103-1)のコード

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

int N, A[2d5], B[2d5], T, E, X;
graph g;
int dep[2d5], pre[2d5];
ll val[2d5];
{
  int x, y;
  rd(N,(A--,B--)(N-1));
  g.setEdge(N,N-1,A,B);
  g.getDist(0, dep);
  REP(rd_int()){
    rd(T,E--,X);
    if(T==1) (x, y) = (A[E], B[E]);
    if(T==2) (x, y) = (B[E], A[E]);
    if(dep[x] < dep[y]){
      val[0] += X;
      val[y] -= X;
    } else {
      val[x] += X;
    }
  }
  g.preorder(pre);
  rep[pre](i,N) rep[g.edge[i]](j,g.es[i]) if(dep[i] < dep[j]) val[j] += val[i];
  wtLn(val(N));
}

Current time: 2021年09月18日04時55分41秒
Last modified: 2021年01月03日16時49分21秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder AtCoder_Beginner_Contest ABC187 ABC_E
トップページに戻る

Logged in as: unknown user (not login)

ログイン: