TouchStone
  Please Login
ログイン 登録
 ホームページ  問題セット  課程の中心  試験一覧  提出状況  掲示板  統計情報
  • ホーム
  • 問題セット
  • P4331
  • 問題
  • P4331【HAOI2015】树上操作
    制限 : 時間制限 : - MS   メモリ制限 : 265536 KB
    審判説明 : 1s
    問題説明

     有一棵点数为 N 的树,以点 1 为根,且树点有边权。然后有 M 个操作,分为三种:

    操作 1 :把某个节点 x 的点权增加 a 。

    操作 2 :把某个节点 x 为根的子树中所有点的点权都增加 a 。

    操作 3 :询问某个节点 x 到根的路径中所有点的点权和。

    入力形式

     第一行包含两个整数 N, M 。表示点数和操作数。

    接下来一行 N 个整数,表示树中节点的初始权值。

    接下来 N-1 行每行三个正整数 fr, to , 表示该树中存在一条边 (fr, to) 。

    再接下来 M 行,每行分别表示一次操作。其中第一个数表示该操

    作的种类( 1-3 ) ,之后接这个操作的参数( x 或者 x a ) 。

    出力形式

    对于每个询问操作,输出该询问的答案。答案之间用换行隔开。

    サンプル入力

    5 5
    1 2 3 4 5
    1 2
    1 4
    2 3
    2 5
    3 3
    1 2 1
    3 5
    2 1 2
    3 3

    サンプル出力

    6
    9
    13

    ヒント

    对于 100% 的数据, N,M<=100000 ,且所有输入数据的绝对值都不会超过 10^6 。