先呈上原题链接[HDU-4578] 题意: 对于一个区间有4个操作: 1.将a~b都加上c 2.将a~b都乘上c 3.将a~b都变成c 4.查询a~b的每个数的p次方的和。(p=1,2,3) 思路: 虽说是一道很裸的线段树的题,但是却非常考验代码能力。 查询p的取值只有三个,所以维护三棵线段树就行了。 难点在多种操作,每个操作的更新次序是有讲究的,在下推标记的时候一般是先推置数操作,然后推乘法,最后推加法。 坑点: 一定要注意有没有爆范围。。。小心WA到怀疑人生。 good luck and have fun!!! 附上代码: #include<bits/stdc++.h> #de...