Type: RemoteJudge 3000ms 500MiB

[Ynoi2011] ODT

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目背景

【先咕咕咕

题目描述

给你一棵树,边权为 11,有点权。

需要支持两个操作:

  • 1 x y z:表示把树上 xxyy 这条简单路径的所有点点权都加上 zz
  • 2 x y:表示查询与点 xx 距离小于等于 11 的所有点里面的第 yy 小点权。

输入格式

第一行两个整数 n,mn,m

第二行 nn 个整数表示每个点的点权。

之后 n1n-1 行,每行两个整数 x,yx,y 表示 xxyy 之间连有一条边。

之后 mm 行,每行为 1 x y z 或者 2 x y 形式,意义如上述。

输出格式

对每个 2 操作输出一行,每行一个整数表示答案。

数据保证每次询问都存在答案。

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

4
3
4

提示

Idea:nzhtl1477,

Solution:nzhtl1477( O(nlog2n/loglogn)O( n\log^2n/ \log\log n ) solution ),negiizhao( O(nlognlogloglogn)O( n\log n\log\log\log n ) solution ),ccz181078( O(nlogn)O( n\log n ) solution ),

Code:nzhtl1477( O(nlog2n/loglogn)O( n\log^2 n/ \log\log n ) code )

Data:nzhtl1477( partially uploaded )

subtask 1:20%20\% n,m1000n,m\leq 1000

subtask 2:10%10\% 树为一条链。

subtask 3:20%20\% n,m105n,m\leq 10^5

subtask 4:30%30\% n,m4×105n,m\leq 4\times 10^5

subtask 5:20%20\% n,m106n,m\leq 10^6

对于 100%100\% 的数据,1n,m1061\leq n,m\leq 10^600\leq 每次加的数 2000\leq 200000\leq 初始的点权 2000\leq 2000

Soft-O(1) 类数据结构的应用(入门)

Not Attended
Status
Done
Rule
IOI
Problem
8
Start at
2024-10-16 15:00
End at
2024-10-26 15:00
Duration
240 hour(s)
Host
Partic.
20