线段树模板题3:区间染色问题

本文介绍了如何使用线段树解决DotA游戏中帕吉肉钩的区间染色问题。通过区间操作改变金属棒类型(铜、银、金),并计算总价值。给出了一种线段树的实现模板,并提供了样例输入和输出。
摘要由CSDN通过智能技术生成

1.3线段树模板题3:区间染色问题
在DotA游戏中,帕吉的肉钩实际上是大多数英雄中最恐怖的东西。挂钩由长度相同的几个连续的金属棍组成。

现在,帕吉(Pudge)希望对挂接进行一些操作。

让我们将钩子的连续金属棒从1编号为N。对于每次操作,Pudge可以将连续的金属棒(从X编号为Y)更改为铜质棒,银质棒或金质棒。
吊钩的总值计算为N个金属棒的总和。更精确地,每种棒的值计算如下:

对于每个铜棒,值为1。
对于每个银棒,值为2。
对于每个金色棒,值为3。

帕吉想知道执行该操作后,钩子的总值。
您可能会认为原来的钩子是由铜棒组成的。
初始的时候,整个序列都是1,接下来,每次输入l,r,x。表示将l到r之间修改为x且x只会是1、2、3,最后问你序列总和。
输入
输入包含几个测试用例。输入的第一行是案例数。不超过10个案例。
对于每种情况,第一行包含一个整数N,1 <= N <= 100,000,这是帕吉肉钩的棍棒数,第二行包含一个整数Q,0 <= Q <= 100,000,这是操作次数。
接下来的Q行,每行包含三个整数X,Y,1 <= X <= Y <= N,Z,1 <= Z <= 3,这定义了一个操作:将编号从X到Y的摇杆变成金属种类Z,其中Z = 1表示铜种类,Z = 2表示银种类,Z = 3表示金色种类。
输出

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值