题目名称 | 3552. 异象石 |
---|---|
输入输出 | visionstone.in/out |
难度等级 | ★★☆ |
时间限制 | 1000 ms (1 s) |
内存限制 | 256 MiB |
测试数据 | 10 |
题目来源 | syzhaoss 于2021-03-26加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:5, 提交:10, 通过率:50% | ||||
嗨嗨嗨 | 100 | 0.601 s | 14.53 MiB | C++ |
yrtiop | 100 | 0.740 s | 12.63 MiB | C++ |
嗨嗨嗨 | 100 | 0.893 s | 14.48 MiB | C++ |
小金 | 100 | 1.880 s | 22.71 MiB | C++ |
小金 | 100 | 1.974 s | 22.71 MiB | C++ |
yrtiop | 10 | 0.734 s | 11.83 MiB | C++ |
yrtiop | 10 | 0.739 s | 11.83 MiB | C++ |
yrtiop | 10 | 0.743 s | 11.83 MiB | C++ |
liuyiche | 0 | 0.000 s | 0.00 MiB | C++ |
liuyiche | 0 | 5.515 s | 4.50 MiB | C++ |
关于 异象石 的近10条评论(全部评论) | ||||
---|---|---|---|---|
记得开long long
|
Adera 是 Microsoft 应用商店中的一款解谜游戏。
异象石是进入 Adera 中异时空的引导物,在 Adera 的异时空中有一张地图。
这张地图上有$n$个点,有$n-1$条双向边把它们连通起来。
起初地图上没有任何异象石,在接下来的$m$个时刻中,每个时刻会发生以下三种类型的事件之一:
1.地图的某个点上出现了异象石(已经出现的不会再次出现);
2.地图某个点上的异象石被摧毁(不会摧毁没有异象石的点);
3.向玩家询问使所有异象石所在的点连通的边集的总长度最小是多少。
请你作为玩家回答这些问题。
第一行有一个整数$n$,表示点的个数。
接下来$n-1$行每行三个整数$x,y,z$,表示点$x$和$y$之间有一条长度为$z$的双向边。
第$n+1$行有一个正整数$m$。
接下来$m$行每行是一个事件,事件是以下三种格式之一:
+x 表示点$x$上出现了异象石
-x 表示点$x$上的异象石被摧毁
? 表示询问使当前所有异象石所在的点连通所需的边集的总长度最小是多少。
对于每个 ? 事件,输出一个整数表示答案。
6 1 2 1 1 3 5 4 1 7 4 5 3 6 4 2 10 + 3 + 1 ? + 6 ? + 5 ? - 6 - 3 ?
5 14 17 10
对于$30%$的数据,$1\leq n,m\leq 1000$。
对于另$20%$的数据,地图是一条链或一朵菊花。
对于$100%$的数据,$1\leq n,m\leq 10^5,1\leq x,y\leq n,x\neq y,1\leq z\leq 10^9$。
《算法竞赛进阶指南》