#P9481. [NOI2023] 贸易

[NOI2023] 贸易

题目描述

近年来,A 国的商贸发展迅猛,但国内的道路建设却跟不上步伐,明显成为了人们贸易往来的限制,管理者为此费尽了心思。

具体而言,A 国共有 2n12^n-1 个城市,其中 11 号城市为首都。对于所有的非首都城市 ii,都有一条单向道路从城市 ii 出发,到达城市 i2\lfloor \frac{i}{2} \rfloor。为方便起见,称这样的道路为“第一类道路”,称城市 i2\lfloor \frac{i}{2} \rfloor 为城市 ii 的“上级城市”。

除此之外,还有 mm单向道路,设其中第 ii 条道路从城市 uiu_i 出发,到达城市 viv_i,这样的道路都有一个特殊性质:从城市 viv_i 出发,沿着第一类道路不断向“上级城市”走去,最终总能走到城市 uiu_i。称这样的道路为“第二类道路”。

每一条道路都有相应的长度值。由此,对于 A 国的任意两个城市 xxyy,都可以计算出从城市 xx 出发,沿道路走到城市 yy,所经过的道路的长度之和的最小值,将这一数值记为 dist(x,y)dist(x,y)。但由于 A 国的道路建设存在严重缺陷,从城市 xx 出发可能根本到达不了城市 yy,此时定义 dist(x,y)=0dist(x,y)=0。同时一个城市出发到自己是不需要经过任何道路的,因此定义 dist(x,x)=0dist(x,x)=0

现在管理者希望计算出这些 dist(x,y)dist(x,y) 的值,以便合理衡量人们贸易往来的便捷程度。但由于 A 国的城市数量太多,将这些值一一列出的工作量太大,因此管理者只希望求出所有 dist(x,y)dist(x,y) 值之和,也就是 x=12n1y=12n1dist(x,y)\sum_{x=1}^{2^n-1}{\sum_{y=1}^{2^n-1}{dist(x,y)}},并希望请你来帮忙。

输入格式

输入的第一行包含两个正整数 nnmm

输入的第二行包含 2n22^n-2 个正整数,第 ii 个数 aia_i 表示从城市 i+1i+1 出发, 到达城市 i+12\lfloor \frac{i+1}{2} \rfloor 的“第一类道路”的长度。

接下来的 mm 行,每行包含三个正整数 u,v,wu,v,w,描述了一条从城市 uu 到城市 vv 的“第二类道路”, 其长度为 ww

输出格式

输出一行一个正整数,表示对应的答案。由于答案可能很大, 你只需要输出模 998244353998244353 意义下的答案即可。

2 1
2 1
1 2 2
8
见附件中的 trade/trade2.in。
见附件中的 trade/trade2.ans。
见附件中的 trade/trade3.in。
见附件中的 trade/trade3.ans。
见附件中的 trade/trade4.in。
见附件中的 trade/trade4.ans。

提示

【数据范围】

对于所有测试数据保证:2n182 \le n \le 181m2n1 \le m \le 2 ^ n1u,v2n11 \le u, v \le 2 ^ n - 11ai,w1091 \le a_i, w \le 10 ^ 9

::cute-table{tuack} | 测试点编号 | nn | mm | 是否有特殊性质 | | :---: | :---: | :---: | :---: | | 121\sim 2 | =8=8 | 256\le 256 | 否 | | 343\sim 4 | =9=9 | 512\le 512 | ^ | | 585\sim 8 | =12=12 | 4,096\le 4,096 | ^ | | 99 | =16=16 | 10\le 10 | ^| | 1010 | ^ | 50\le 50 | ^ | | 1111 | ^ | 100\le 100 | ^ | | 1212 | ^ | 65,536\le 65,536 | 是 | | 131513\sim 15 | ^ | ^ | 否 | | 161716\sim 17 | =18=18 | 262,144\le 262,144 | 是 | | 182018\sim 20 | ^ | ^ | 否 |

特殊性质:保证每一条“第二类道路”都是从首都(城市 11)出发。