A6378 | 「TJOI2015」旅游
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
为了提高智商,ZJY 准备去往一个新世界去旅游。这个世界的城市布局像一棵树。每两座城市之间只有一条路径可以互达。每座城市都有一种宝石,有一定的价格。ZJY
为了赚取最高利益,她会选择从 A 城市买入再转手卖到 B 城市。由于 ZJY 买宝石时经常卖萌,因而凡是 ZJY 路过的城市,这座城市的宝石价格会上涨。让我们来算算
ZJY 旅游完之后能够赚取的最大利润。(如某城市宝石价格为 $v$,则 ZJY 在下一城市出售价格也为 $v$)
为了赚取最高利益,她会选择从 A 城市买入再转手卖到 B 城市。由于 ZJY 买宝石时经常卖萌,因而凡是 ZJY 路过的城市,这座城市的宝石价格会上涨。让我们来算算
ZJY 旅游完之后能够赚取的最大利润。(如某城市宝石价格为 $v$,则 ZJY 在下一城市出售价格也为 $v$)
输入格式
第一行输入一个正整数 $N$,表示城市个数。
接下来一行输入 $N$ 个正整数表示每座城市宝石的最初价格 $p$,每个宝石的初始价格不超过 $100$。
第三行开始连续输入 $N-1$ 行,每行有两个数字 $x$ 和 $y$。表示 $x$ 城市和 $y$ 城市有一条路径。城市编号从 $1$ 开始。
下一行输入一个整数 $Q$,表示询问次数。
接下来 $Q$ 行,每行输入三个正整数 $a,b,v$,表示 ZJY 从 $a$ 旅游到 $b$,城市宝石上涨 $v$。
接下来一行输入 $N$ 个正整数表示每座城市宝石的最初价格 $p$,每个宝石的初始价格不超过 $100$。
第三行开始连续输入 $N-1$ 行,每行有两个数字 $x$ 和 $y$。表示 $x$ 城市和 $y$ 城市有一条路径。城市编号从 $1$ 开始。
下一行输入一个整数 $Q$,表示询问次数。
接下来 $Q$ 行,每行输入三个正整数 $a,b,v$,表示 ZJY 从 $a$ 旅游到 $b$,城市宝石上涨 $v$。
输出格式
对于每次询问,输出 ZJY 可能获得的最大利润,如果亏本则输出 `
0`。输入输出样例
输入 #1
3 1 2 3 1 2 2 3 2 1 2 100 1 3 100
输出 #1
1 1
$1 \leq N \leq 50000, \ 1 \leq Q \leq 50000$
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?