qwq

#include<cstdio>
using namespace std;
const int maxn = ;
int n,m,x,y,flag;
int l[*maxn],r[*maxn];
long long lazy[*maxn],sum[*maxn]; void build(int L,int R,int now) {
lazy[now] = ;
l[now] = L;
r[now] = R;
if(L == R) {
scanf("%lld",&sum[now]);
return;
}
int mid = (L+R)/;
build(L,mid,now*);
build(mid+,R,now*+);
sum[now] = sum[now*] + sum[now*+];
} long long query(int L,int R,int now) {
sum[now] += lazy[now] * (r[now] - l[now] + );
lazy[now*] += lazy[now];
lazy[now*+] += lazy[now];
lazy[now] = ;
if(l[now] == L && r[now] == R)return sum[now];
int mid = (l[now]+r[now])/;
if(R <= mid) return query(L,R,now*);
else if(L >= mid+) return query(L,R,now*+);
else return query(L,mid,now*)+query(mid+,R,now*+);
} void modify(int L,int R,long long d,int now){
if(l[now] == L && r[now] == R) {
lazy[now] += d;
return;
}
sum[now] += (long long)d*(R-L+);
int mid = (l[now]+r[now])/;
if(R <= mid) modify(L,R,d,now*);
else if(L >= mid+) modify(L,R,d,now*+);
else {
modify(L,mid,d,now*);
modify(mid+,R,d,now*+);
}
} int main() {
scanf("%d%d",&n,&m);
build(,n,);
while(m) {
m--;
scanf("%d",&flag);
if(flag == ) {
long long k;
scanf("%d%d%lld",&x,&y,&k);
modify(x,y,k,);
}
if(flag == ) {
scanf("%d%d",&x,&y);
printf("%lld\n",query(x,y,));
}
}
return ;
}

最新文章

  1. Retina时代的前端视觉优化
  2. git基本使用方法
  3. 自己写的中间层..基于通讯组件 RTC
  4. LeetCode(9) - Palindrome Number
  5. sql常识-INNER JOIN
  6. div中加入iframe,可以实现Ajax的功能
  7. 使用css3背景渐变中的透明度来设置不同颜色的背景渐变
  8. 使用phpExcel导入Excel进入Mysql数据库
  9. PL/SQL Developer下设置“长SQL自己主动换行”
  10. bitmap 加载的时候出现OOM,nullpointer
  11. java快速排序详解
  12. python3 第十六章 - 函数
  13. bzoj5104: Fib数列
  14. Individual Reading Assignment
  15. windows下 navicat_premium破解方法
  16. APP注册邀请码
  17. matlab .fig转化成pdf 缺失
  18. SVN版本库备份和恢复
  19. Java微笔记(8)
  20. JS操作CSS随机改变网页背景

热门文章

  1. 纯css3实现的动画导航菜单
  2. TurboLinux系统管理习题一
  3. html标签必备
  4. CSS3圆圈动画放大缩小循环动画效果
  5. debian图形界面安装安装GNOME中文桌面环境_刀光剑影_新浪博客 - Google Chrome
  6. 洗礼灵魂,修炼python(62)--爬虫篇—模仿游戏
  7. (转载)Oracle 树操作(select…start with…connect by…prior)
  8. log4net写入日志到sqlserver数据库
  9. bootstrap-select插件 多选框
  10. 高通非adsp 架构下的sensor的bug调试