题目链接:http://codeforces.com/contest/444/problem/C 给定一个长度为n的序列,初始时ai=i,vali=0(1≤i≤n).有两种操作: 将区间[L,R]的值改为x,并且当一个数从y改成x时它的权值vali会增加|x−y|. 询问区间[L,R]的权值和. n≤10^5,1≤x≤10^6. 感觉这是一个比较好的考察线段树区间更新的性质. 当区间的a[i]一样时,区间更新即可,这是剪枝. 注意,lazy标记存的是增量. #include <bits/stdc…