#P8934. [JRKSJ R7] TSM eerT

    ID: 8117 Type: RemoteJudge 1000ms 256MiB Tried: 0 Accepted: 0 Difficulty: 6 Uploaded By: Tags>2023洛谷原创O2优化树的直径

[JRKSJ R7] TSM eerT

题目描述

对于一个 nn 个结点的带边权的树 TT,定义 dis(x,y)dis(x,y)TTxyx\to y 路径上的边权和。再定义一个 nn 个结点的无向完全图 p(T)=Gp(T)=G,其中 x,y[1,n]\forall x,y\in [1,n]GG 中边 (x,y)(x,y) 的边权为 dis(x,y)dis(x,y)

定义 f(T)f(T)p(T)p(T) 的最大生成树。特别的,若 p(T)p(T) 的最大生成树不唯一,请立刻判断出并报告。

给定树 T0T_0 和整数 kk,求 fk(T0)f^k(T_0)。其定义将在下文给出。

输入格式

第一行两个整数 n,kn,k
下面第 2n2\sim n 行,第 ii 行两个整数 ifi,vii-f_i,v_i 表示 T0T_0 的一条边 (i,fi)(i,f_i),边权为 viv_i也就是说,这一行输入了两个整数 fi,vif'_i,v_i,真实的 fi=ifif_i=i-f'_i

输出格式

输出仅有一个整数表示答案。

x[0,k1]\exists x\in[0,k-1] 使得 p(fx(T0))p(f^x(T_0)) 的最大生成树不唯一,输出 1-1。否则,输出 fk(T0)f^k(T_0) 的所有边权和对 2322^{32} 取模的结果。

3 3
1 1
2 2
13
10 2
1 7
1 2
1 5
4 5
2 1
3 9
2 9
4 4
9 4
736
4 1
1 1
2 1
3 1
-1

提示

定义

fk(T)f^k(T) 的定义为:

$$f^k(T)=\begin{cases}T&k=0\\f(f^{k-1}(T))&k>0\end{cases} $$

样例 11 解释

分别是 T0,f(T0),f2(T0),f3(T0)T_0,f(T_0),f^2(T_0),f^3(T_0)

以计算 f(T0)f(T_0) 的过程为例,生成的 p(T0)=Gp(T_0)=G

最大生成树上的边为 (1,3),(2,3)(1,3),(2,3)

数据规模

本题采用捆绑测试。 | Subtask\text{Subtask} | nn\le | kk\le | Score\text{Score} | | :----------: | :----------: | :----------: | :----------: | | 11 | 10310^3 | 11 | 1010 | | 22 | 10510^5 | 11 |2020 | | 33 | 10610^6 | 11 |3030 | | 44 | 10610^6 | 10710^7 |4040 |

对于 100%100\% 的数据,2n1062\le n\le 10^61k1071\le k\le 10^71fi<i1\le f_i<i1vi1091\le v_i\le10^9

特殊评分方式

本题开启子任务依赖,具体如下:

  • 对于子任务 ii,您需要答对所有 j[1,i]j\in[1,i] 的子任务 jj 才能获得子任务 ii 的分数。