拉喀达之殇

拉喀达之殇

题目描述
在遥远的星系中有一颗美丽的星球名叫拉喀达。一天,一只在星间旅行的星龙注意到了这里。它是不朽的化身,召命的使者,在无意间向这颗星球投下了一枚龙鳞,从此,拉喀达人实现了永生。永生的代价是巨大的,不久,星球的资源越来越紧缺,人们首先想到的是发动战争来掠夺,而不是发展科技走出星球。
神之影骑交给你一张会实时更新战况的地图,地图上有N个点,代表N座城市,有N-1条道路将它们相连。每隔一个时刻地图会有如下变化:
1.地图上的某个点出现了敌军(敌军搜寻物资,因此每个地方只会出现一次)
2.地图上某个点的敌军离开了(没有敌军的点不会有敌军离开)
你的任务是帮助柯洛斯滕的人们躲避敌军的入侵,因此每隔一段时间需要掌控敌军的动向,通过地图计算出所有敌军存在的点连同的边集的总长度最小是多少。

输入格式
第一行有一个整数N,表示城市的的个数。
接下来N-1行每行3个整数x,y,z,表示城市x和城市y间有一条长度为z的双向道路。
第N+1行有一个整数M。
接下来M行每行是一个事件,事件以一下格式呈现:
1.+x表示城市x出现了敌军。
2.-x表示城市x撤走了敌军。
3.?表示需要计算当前所有敌军存在的点连同的边集的总长度最小是多少。

输出格式
对于每个?事件,输出一个整数表示答案。
输入样例:

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

数据范围
对于100%的数据
1≤N,M≤1e5,1≤x,y≤N,x≠y,1≤z≤1e9

信息

ID
1008
难度
(无)
分类
(无)
标签
递交数
1
已通过
0
通过率
0%
上传者