| 比赛 | 
    2025.5.5 | 
    评测结果 | 
    WWATTAWWWW | 
    | 题目名称 | 
    愈加善良的希望 | 
    最终得分 | 
    20 | 
    | 用户昵称 | 
    会挽弯弓满月 | 
    运行时间 | 
    8.147 s  | 
    | 代码语言 | 
    C++ | 
    内存使用 | 
    3.95 MiB  | 
    | 提交时间 | 
    2025-05-05 11:11:02 | 
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;
const int N=5e4+10; 
int read(){
	int x=0,f=1;
	char c=getchar();
	while(c<'0'||c>'9'){
		if(c=='-') f=-1;
		c=getchar();
	}
	while(c>='0'&&c<='9'){
		x=x*10+c-'0';
		c=getchar();
	}
	return f*x;
}
int n,q;
int a[N];
long long sum[N];
int opt,l,r,k;
int main(){
	freopen("hod.in","r",stdin);
	freopen("hod.out","w",stdout);
	n=read();
	for(int i=1;i<=n;i++){
		a[i]=read();
		sum[i]=sum[i-1]+a[i];
	}
	q=read();
	while(q--){
		opt=read();l=read();r=read();
		if(opt==0){
			k=read();
			for(int i=l;i<=r;i++){
				sum[i]+=1ll*(i-l+1)*k;
			}
		}
		else{
			long long maxn=sum[l];
			for(int i=l+1;i<=r;i++) {
				maxn=max(maxn,sum[i]);
			}
			printf("%lld\n",maxn);
		}
	}
	return 0;
}