求一种更快的输入方式(
查看原帖
求一种更快的输入方式(
1100527
yoohoo楼主2024/7/22 16:39

想换种思路来做 (不会写线段树)

以下是暴力(应该)代码

#include<iostream>
#include<algorithm>
using namespace std;
long long a[1000011];
long long b[1000011][6];
int main(){
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	int n,q;
	cin>>n>>q;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	int ty,x,y,z;
	int num,maxn;
	for(int i=1;i<=q;i++){
		cin>>ty;
		if(ty!=3){
			b[i][0]=ty;
			cin>>x>>y>>z;
			b[i][1]=x;
			b[i][2]=y;
			b[i][3]=z;
		}else{
			cin>>x>>y;
			maxn=-0x3f3f3f;
			for(int j=x;j<=y;j++){
				num=a[j];
				for(int s=1;s<i;s++){
					if(j>=b[s][1]&&j<=b[s][2]){
						if(b[s][0]==1){
							num=b[s][3];
						}else{
							num+=b[s][3];
						}
					}
				}
				if(num>maxn){
					maxn=num;
				}
			}
			cout<<maxn<<'\n';
		}
	}
	return 0;
}

还请各位dalao略微提下建议(

2024/7/22 16:39
加载中...