logo AlgoBeat OnlineJudge
登录 注册

#214659. [RMI 2018] 贩运 / Traffickers

内存限制:512 MiB 时间限制:3500 ms 标准输入输出
题目类型:VJudge(洛谷) 评测方式:VJudge
上传者: 匿名

题目描述

翻译来自于 LibreOJ


题目译自 Romanian Master of Informatics 2018 Day1 T3 「Traffickers

在狂野西部,帕布罗是最臭名昭著的人物之一,他控制着 个通过道路连接成树状结构的城市。他的心腹手下是贩运者,日夜不停地运输货物。每名贩运者由一对城市 定义:从时间 开始,贩运者从城市 沿最短路径前往城市 。在每个整数时间点,贩运者交付 单位货物,然后移动到下一个城市。

帕布罗的贩运者难以追踪:一旦一名贩运者到达目标城市 并交付货物,在下一时间点,他会瞬间传送回城市 (如果他在时间 在城市 交付货物,那么在时间 他将在城市 交付)。由于生意兴隆,帕布罗希望永不停止,贩运者将永远按照他们的路线行动。

尽管帕布罗的系统看似无懈可击,你还是想知道是否能进一步优化。因此,你将对系统执行以下 种查询:

  • :添加一名在城市 间运输的贩运者。
  • :移除一名在城市 间运输的贩运者。保证这样的贩运者存在。
  • :你想知道在时间 (包含)内,所有现有贩运者在城市 最短路径上(包含两端城市)交付的货物单位总数。

输入格式

第一行包含一个整数 ,表示城市数量。接下来的 行每行包含两个整数 ,表示城市 之间有一条直接道路。

下一行包含一个整数 ,表示帕布罗网络中初始的贩运者数量。接下来的 行每行包含两个整数 ,表示一名贩运者的路径城市对。

下一行包含一个整数 ,表示你打算执行的查询数量。接下来的 行每行包含一个查询,格式如上所述。

输出格式

对于每种类型 的查询,在单独的一行输出答案。

样例

样例输入 1

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

样例输出 1

2
10

数据范围与提示

样例 1 解释

在样例中,第一个查询(类型 )询问在时间 内,城市 的最短路径(路径为 )上交付的货物总量。初始只有一名贩运者从城市 ,他在时间 在城市 交付 单位货物,时间 在城市 交付 单位货物,总计 单位。

第二个查询(类型 )添加一名从城市 的贩运者。

第三个查询(类型 )询问在时间 内,城市 的最短路径(路径为 )上交付的货物总量。两名贩运者的交付情况导致总计 单位货物。

数据范围

对于所有输入数据,满足:

  • 每名贩运者的路径最多覆盖 个城市(包括端点)

每个测试点将单独评分。

子任务 分值 附加限制
无附加限制