首页 > 其他分享 >P1253 扶苏的问题

P1253 扶苏的问题

时间:2023-07-20 11:28:02浏览次数:45  
标签:P1253 minn int 扶苏 问题 Lmid ans include root

link

非常直白的线段树题目

要注意负数的问题以及吮吸

#include<iostream>
#include<cstring>
#include<cstdio>
#define int long long
using namespace std;
int tree[8000002];
int lazyre[8000002];
int lazyad[8000002];
int n,q;
int op;
int minn;
int x,y,z;
void pushdown(int root,int l,int r){
	if(lazyre[root]!=minn){
		lazyad[root<<1]=0;
		lazyad[root<<1|1]=0;
		lazyre[root<<1]=lazyre[root];
		lazyre[root<<1|1]=lazyre[root];
		tree[root<<1]=tree[root<<1|1]=lazyre[root];
		lazyre[root]=minn;
	}
	if(lazyad[root]!=0){
		lazyad[root<<1]+=lazyad[root];
		lazyad[root<<1|1]+=lazyad[root];
		tree[root<<1]+=lazyad[root];
		tree[root<<1|1]+=lazyad[root];
		lazyad[root]=0;
	}
	
}
void pushup(int root){
	tree[root]=max(tree[root<<1],tree[root<<1|1]);
}
void add(int root,int l,int r,int L,int R,int v){
	if(L<=l&&r<=R){
		lazyad[root]+=v;
		tree[root]+=v;
		return ;
	}
	pushdown(root,l,r);
	int mid=(l+r)>>1;
	if(L<=mid) add(root<<1,l,mid,L,R,v);
	if(R>mid) add(root<<1|1,mid+1,r,L,R,v);
	pushup(root);
}
void re(int root,int l,int r,int L,int R,int v){
	if(L<=l&&r<=R){
		lazyad[root]=0;
		lazyre[root]=v;
		tree[root]=v;
		return ;
	}
	int mid=(l+r)>>1;
	pushdown(root,l,r);
	if(L<=mid) re(root<<1,l,mid,L,R,v);
	if(R>mid) re(root<<1|1,mid+1,r,L,R,v);
	pushup(root);
}
int ask(int root,int l,int r,int L,int R){
	if(L<=l&&r<=R){
		return tree[root];
	}
	pushdown(root,l,r);
	int mid=(l+r)>>1;
	int ans=minn;
	if(L<=mid) ans=max(ans,ask(root<<1,l,mid,L,R));
	if(R>mid) ans=max(ans,ask(root<<1|1,mid+1,r,L,R));
	pushup(root);
	return ans;
}
signed main(){
	scanf("%lld%lld",&n,&q);
	memset(lazyre,0xc0,sizeof(lazyre));
	minn=lazyre[0];
	//cout<<minn;
	for(int i=1;i<=n;++i){
		scanf("%lld",&x);
		add(1,1,n,i,i,x);
	}
	for(int i=1;i<=q;++i){
		scanf("%lld",&op);
		if(op==1){
			scanf("%lld%lld%lld",&x,&y,&z);
			re(1,1,n,x,y,z);
		}
		if(op==2){
			scanf("%lld%lld%lld",&x,&y,&z);
			add(1,1,n,x,y,z);
		}
		if(op==3){
			scanf("%lld%lld",&x,&y);
			cout<<ask(1,1,n,x,y)<<endl;
		}
	}
}

标签:P1253,minn,int,扶苏,问题,Lmid,ans,include,root
From: https://www.cnblogs.com/For-Miku/p/17567781.html

相关文章

  • Xshell 连接Vmware虚拟机下Ubuntu,出现拒绝密码的问题:
    参考解决方法打开WiredSettings将IPV4,中的设置不选择DHCP协议,而是选择manal手动地址按照details中的填即可,子网掩码设置为255.255.255.0打开文件/etc/ssh/sshd_config找到这四行语句,去掉前面注释#,并修改为LoginGraceTime2mPermitRootLoginyesStrictModesyes........
  • 关于oracle大数据量表添加字段问题
    在工作中有一个情况需要向一个数据量很大的表中新加两个字段,而在整理出当前字段的插入sql时,添加了默认值为0.‘altertableuser_infomodifyid_cardnumber(20)defalut'0';而这个sql却只需要零点几秒甚至更少。结果:在业务需要进行的时候对于这种大数据量的表一定要避免加def......
  • .NET HttpClient 关于 Send 问题
           一个数据采集项目中,使用HttpClient 携带COOKIE对被采集的系统调用API的方式进行数据请求,使用HttpClient 过程中发现,通过HttpClient 中Send方式进行数据请求时”JSESSIONID“缺失!      HttpClient初始化:1#region初......
  • Appium新版本引发的一个问题
    Appium新版本引发的一个问题准备工作测试代码fromappiumimportwebdriverdes_cap={'platformName':'android'}driver=webdriver.Remote(command_executor='http://127.0.0.1:4723/wd/hub',desired_capabilities=des_cap)......
  • EasyCVR告警类型设置后首页需要刷新才能更新的问题优化
    EasyCVR视频融合平台基于云边端一体化架构,可支持多协议、多类型设备接入,包括:NVR、IPC、视频编码器、无人机、车载设备、智能手持终端、移动执法仪等。平台具有强大的数据接入、处理及分发能力,可在复杂的网络环境中,将分散的各类视频资源进行统一汇聚、整合、集中管理。关于平台的......
  • 重复的子字符串问题
    1.重复子字符串问题分析459.重复的子字符串-力扣(LeetCode)有点难度,值得反复刷;本质找循环子串问题,可以 暴力求解或者移位2.解法2.0 暴力求解设 :字符串S由s'重复构成,则 S=s's's's's's' (n个s',s'长度为i);则:S长度就是n*i,那么我们循环......
  • pythcharm问题集锦
    1.无法加载文件*\venv\Scripts\activate.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅https:/go.microsoft.com/fwlink/?LinkID=135170中的about_Execution_Policies解决方法:https://www.cnblogs.com/91key/articles/16770455.html......
  • 解决Xavier桌面共享闪退的问题
    一、修复DesktopSharing闪退问题表现:点击共享桌面应用,无法打开问题原因:系统bug解决方法:1、打开配置文件sudovim/usr/share/glib-2.0/schemas/org.gnome.Vino.gschema.xml2、在文件最后两个标签之前加一段key代码 3、编译生效sudoglib-compile-schemas/usr/share/gl......
  • 一维资源分配问题(java实现)
    一维资源分配1.问题介绍设有总量为a的某种原料,用于生产n种产品。假设用于生产第k种产品生产的数量为\(x_k\),并获得收益\(\varphi(x_k)\),问应该如何分配n种产品的资源使用量使得总收益最大。2.Solution\(k\):生产第k种产品的决策阶段;\(x_k\):投入到第k种产品生产的资......
  • 向我提问题吧!
    阅读本文大概需要3分钟。一直以来,我在各个渠道都会收到各种各样的问题,有问我关于工作方向的,有问我关于offer选择的,有问我在项目开发中遇到的实际问题的...我自己本身工作很忙,但是一想到如果我当时遇到困难能有一位前辈帮我指引该多么幸运啊,所以遇到一些我刚好知道的问题就随手回......