CF 46D Parking Lot(区间合并)

深入解析ChangeFormer:基于Transformer的孪生网络在遥感变化检测中的创新应用 本文深入解析了ChangeFormer这一基于Transformer的孪生网络在遥感变化检测中的创新应用。通过分层Transformer编码器、特征差异计算模块和轻量级MLP解码器的设计,ChangeFormer在LEVIR-CD数据集上取得了90.4%的F1分数,显著优于传统卷积网络。文章还详细探讨了工程化实现、训练调参和模型部署的优化策略,为遥感变化检测领域提供了新的技术范式。 阅读详情


这个题和Hotel差不多

把整个树的区间增加b+f就可以直接处理了

查询的时候查询车长+b+f,更新的时候还是更新车长、、

把出车的标号理解成第几次进入的车了、WA了一个小时有木有、、、


#include<stdio.h>
#include<string.h>
#define MAXN 201000
#define lch p<<1
#define rch p<<1|1
#define mid (t[p].l+t[p].r)>>1
struct node
{
	int l,r;
	int lsum,rsum,sum;
	int flag;
	int len;
	void getsum() {lsum=rsum=sum=(flag?len:0);}
}t[MAXN<<2];
struct carin
{
	int l,r;
}car[105];
int max(int a,int b) {return a>b?a:b;}
void construct(int l,int r,int p)
{
	t[p].l=l,t[p].r=r,t[p].flag=-1;
	t[p].len=r-l+1;
	t[p].getsum();
	if(l==r) return ;
	int m=mid;
	construct(l,m,lch);
	construct(m+1,r,rch);
}
void pushdown(int p)
{
	t[lch].flag=t[rch].flag=t[p].flag;
	t[p].flag=-1;
	t[lch].getsum();
	t[rch].getsum();
}
void pushup(int p)
{
	t[p].sum=max(t[lch].sum,t[rch].sum);
	t[p].sum=max(t[p].sum,t[lch].rsum+t[rch].lsum);
	t[p].lsum=t[lch].lsum;
	if(t[lch].lsum==t[lch].len) t[p].lsum+=t[rch].lsum;
	t[p].rsum=t[rch].rsum;
	if(t[rch].rsum==t[rch].len) t[p].rsum+=t[lch].rsum;
}
void modify(int l,int r,int op,int p)
{
	if(t[p].l==l&&t[p].r==r)
	{
		t[p].flag=op;
		t[p].getsum();
		return ;
	}
	if(t[p].flag!=-1) pushdown(p);
	int m=mid;
	if(r<=m) modify(l,r,op,lch);
	else if(l>m) modify(l,r,op,rch);
	else modify(l,m,op,lch),modify(m+1,r,op,rch);
	pushup(p);
}
int query(int x,int p)
{
	if(t[p].l==t[p].r&&x==1) return t[p].l;
	if(t[p].flag!=-1) pushdown(p);
	if(x<=t[lch].sum) return query(x,lch);
	else if(t[lch].rsum+t[rch].lsum>=x) return t[lch].r-t[lch].rsum+1;
	else if(x<=t[rch].sum) return query(x,rch);
	else return -1;
}
int main()
{
	int op,x;
	int len,b,f,n;
	while(scanf("%d%d%d",&len,&b,&f)!=EOF)
	{
		//int cnt=1;
		construct(0,len+b+f-1,1);
		scanf("%d",&n);
		for(int i=1;i<=n;i++)
		{
			scanf("%d%d",&op,&x);
			if(op==1)
			{
				int l=query(x+b+f,1);
				if(l==-1) printf("-1\n");
				else
				{
					printf("%d\n",l);
					l+=b;
					int r=l+x-1;
					car[i].l=l,car[i].r=r;
					modify(l,r,0,1);
				}
			}
			else
				modify(car[x].l,car[x].r,1,1);
		}
	}
	return 0;
}


Jupyter notebook教程系列(二)Jupyter notebook的基本用法 Jupyter notebook的基本使用   一. 主页面 如图1-1 我们先介绍一下主页面上的内容: 1.Files页面是用于管理创建文件相关类目的。 2.Running页面主要展示的是当前正在运行当中的终端和“ipynb”格式的notebook。若想要关闭已经打开的终端和“ipynb”格式的notebook,仅仅关闭其页面是无法彻底退出程序的,需要在Running页面点击其对... 阅读详情

相关推荐

Python气象数据处理实战:用PyCINRAD轻松绘制雷达PPI图像(附避坑指南)

本文详细介绍了如何使用Python库PyCINRAD处理中国CINRAD系列天气雷达的基数据,并绘制专业的PPI图像。内容涵盖从环境配置、数据读取、核心绘图到高级定制与批量处理的完整流程,并针对安装依赖、中文乱码、数据范围等常见问题提供了实用的避坑指南,帮助气象工作者高效完成雷达数据可视化。

dog123的博客 222

CF 46D Parking Lot(SET)

题目链接:http://codeforces.com/problemset/problem/46/D 题目大意: 在长为L的(点0~点L)的线段上停车开车操作; 停车 1 x:车长x,需要b+x+f的空余才能使车停进去,多个区域,选择最左边 开车 2 x:第x次操作,停进的车,开出去 分析:因为需要插入的次数很小,所以可以直接记录,每辆汽车一次插入的位置,

超级码力 706

三极管共集电极放大电路详解:射极跟随器的原理、计算与应用

三极管放大电路是模拟电子技术的基石,常见组态包括共发射极、共基极和共集电极。其中共集电极电路因输入电阻大、输出电阻小、电压增益接近1的特性,常被用作射极跟随器,在信号缓冲、级间隔离和低阻抗负载驱动等场景中发挥关键作用。其核心价值并非电压放大,而是完成阻抗变换,将高内阻信号源转换为低内阻输出,同时保持信号幅值基本不变。理解其静态工作点计算与动态参数推导(如电压增益、输入输出电阻)是设计实用电路的前提。本文结合12V电源下的具体设计实例和仿真验证,梳理了从电路识别、参数计算到工程实践的完整流程,并指出常见设计误

weixin_29193259的博客 367

[CF46D]Parking Lot

题目:Parking Lot 传送门:http://codeforces.com/problemset/problem/46/D 分析: 做法一: 1)这题和Hotel那题一样,也可以看做是求区间空位的问题,不过相对于Hotel那题细节会更多一些。 2)头和尾是不用考虑前和后是否有车的,但可以在$-B$和$L+F$这两个位置假装停了一辆车,这样就不用考虑第一辆插入的车和插入在最后的车啦...

weixin_30924239的博客 282

一种基于OpenPose和DNN的跌倒检测软件系统(中文&英文)

学习并实现一种跌倒检测模型,此模型基于OpenPose实现逐帧人体姿态检测,使用DNN识别人体动作。检测方式有在线与离线两种,本文主要测试了离线模式,测试效果较好。

Tongzhou_Li的博客 2644

SAP UI5 应用开发教程的学习目录 - 循序渐进,由浅入深,适合不同水平的 SAP UI5 开发人员

笔者在业余时间设计了这份 SAP UI5 学习教程,把开发一个完整的 SAP UI5 应用的流程,拆分成若干个步骤,力求每个步骤里,把涉及到的知识点都涵盖到。建议零基础或者对 SAP UI5 知之甚少的 SAP UI5 初学者,按照顺序从第一个步骤开始循序渐进地学习,把这些代码下载到本地,配合教程的文字讲解,自己动手,以加深理解。 对于已经有一定基础的 SAPUI5 开发人员,可以通过本文的目录,跳过前面一部分比较基础的章节,直接挑选对自己工作项目有关,或者包含某些知识点自己尚未掌握的章节来有针对性地学习。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 3万+

CF 46 D. Parking Lot(线段树)

D. Parking Lot time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Nowadays it is becoming increasingly difficu

志当存高远 1334

损失函数大汇总(五十九)(TopoInteraction Loss附公式推导与代码)

本文介绍了TopoInteraction Loss,一种用于多类别分割任务的拓扑交互约束损失函数。不同于传统拓扑损失关注单类别的连通性和孔洞数量,该损失重点约束不同类别之间的空间关系,包括互斥(exclusion)和包含(containment)两种典型拓扑关系。通过将全局拓扑约束转化为局部邻接检测,该损失能准确定位破坏预设拓扑关系的像素,并针对性施加惩罚。关键创新点在于:1)将包含关系转化为互斥约束;2)使用卷积运算高效检测非法邻接;3)仅对违规像素施加损失。实验表明,该方法能有效纠正类别间的错误接触,特

悦学共鸣,温柔以待,汇聚光芒,共同成长 350

CF 46D Parking Lot

题目链接:http://codeforces.com/problemset/problem/46/D 题目大意: 在长为L的(点0~点L)的线段上停车开车操作; 停车 1 x:车长x,需要b+x+f的空余才能使车停进去,多个区域,选择最左边 开车 2 x:第x次操作,停进的车,开出去 题目思路: 思路很简单,很裸的线段树区间合并。 但是我还是做第三次了,都没有1A,所

Go.To.AC的专栏 1194

查找【优快云】- 人工客服

【代码】查找【优快云】- 人工客服。

👨‍💻 前端开发者 | 技术分享者 1401

Unreal5从入门到精通之如何在VR中使用3DUI

前面我们讲过《Unreal5从入门到精通之UMG的使用》一般制作游戏时,UI都是添加到屏幕视窗上面的,但是在制作VR时,我们往往需要制作一个3D的UI,放置在场景中,然后使用手柄的射线来和UI进行交互。今天我们就来讲解下,如何在VR中创作和交互3DUI首次操作会感觉好复杂,多多练习,当你熟悉了UE蓝图的操作后会发现,这只是一个常规的蓝图操作而已。祝大家在虚幻的学习过程中非常顺利。希望这篇博客对你有所帮助。

TxNet 1985

cf46d

此题区间精度把我搞的郁闷死了。。。 其实很好理解,此题和hotel是一个性质,由于两端点不好处理,我就在左端加一个b,右端加一个f,然后这样就可以保证所有车都可以满足条件了,然后在询问的时候把b加回来就好了。。。。。 就是由于我的坐标轴往后延伸了b,然后我的是有负数,然后处理的时候总会有精度差。。。把我debug调死了。。。 搞了2个小时没搞定这个。。。索性不这样建了。。直接下标0开始,然后

lyc 820

当SLAM遇上FPGA:打造一个会“硬件加速”的激光雷达SLAM系统

点云数据的运动畸变校正特征点提取与匹配、以及ICP迭代最近点配准。在传统方案中,我们通常用ARM核完成所有计算。但点云配准中的最近邻搜索(KD-Tree)需要大量分支判断,CPU处理起来效率很低;而ICP中的矩阵分解(SVD)虽然计算量大,但非常适合并行化。ZYNQ的特殊之处在于它把ARM(PS端)和FPGA(PL端)集成在同一颗芯片上。ARM擅长跑操作系统、处理复杂逻辑和调度,FPGA擅长做高吞吐量的并行计算。两者之间通过AXI总线高速互联,数据交换延迟只有几十个时钟周期。

QQ_778132974的博客 375

CF-46D-Parking Lot(线段树,区间合并,点表示线段)

D. Parking Lot time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Nowadays it is becoming increasingly difficu

fsdcyr 1373

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

zoj 3633 Alice's present 线段树

链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3633 题意:给出一n个数的序列,然后又m个询问[x,y](下标),如果[x,y]内没有重复的数,就输出OK,否则输出从右至左第一个重复的数字 测试数据: 5 1 2 3 1 2 3 1 4 1 5 3 5 [1,4]间从右到左第一个重复的数字是1 [

yjCola 4723

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

poj3667 Hotel (线段树区间合并)

链接:http://poj.org/problem?id=3667 题意:n个连续的房间m个操作。操作分两种,第一种以1 x形式给出,找到最左的能连续容下x个人的连续房间,并输出左端点的编号,如果找不到就输出0.第二章以2 l x的形式给出,表示以l为起点的x个房间都清空。 查询的时候要能直接获取区间的最大连续空房间,这样就能判断能不能连续放下这x个人,但这样还确定不了具体放哪。放的位

yjCola 2409

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

poj 3468 A Simple Problem with Integers(线段树成段更新,延迟标记,Lazy)

链接:http://poj.org/problem?id=3468 线段树成段更新,延迟更新 #include #include #define MAXN 100005 struct node { int l,r; __int64 s,c; }t[MAXN*4]; void construct(int l,int r,int p) { t[p].l=l,t[p].r=r,t[

yjCola 1814

hdu 4521 小明系列问题——小明序列

链接:http://acm.hdu.edu.cn/showproblem.php?pid=4521 题目中文 这个题我用线段树做的,也有更快的算法,这里只介绍线段树的方式 叶子节点为输入的值 从头开始遍历,线段树天然地排好序,所有不用管大小的问题,设加入了点a[i],那么在一个子序列中这个点最近的下一个点就是a[i+d+1],相当于对于a[i+d+1]来说,当加入了点a[i]时,就

yjCola 996

hdu 1542 Atlantis(线段树,扫描线)

链接:http://acm.hdu.edu.cn/showproblem.php?pid=1542 题意:n个矩阵,给出每个矩阵的左下和右上两个点的坐标,求出所有矩形总的覆盖面积。 扫描线问题,因为坐标是浮点型,那就必须把坐标离散化,我这直接上map了。 再来就是求这个面积的方式了:我这是向y轴映射,那么就保存每一条竖线,包扩该条竖线的x坐标,上下两个y坐标,还有用lr保存这条竖线是

yjCola 972

poj2777 Count Color线段树延迟更新,二进制状态记录

题目链接 线段树延迟更新的运用,这里用到二进制的方式保存状态,位运算向上更新状态 需要注意的是给出的a,b可能a>b #include #include #define MAXN 100005 struct node { int l,r; int c; int rec; }t[MAXN*4]; void construct(int l,int r,int p)

yjCola 946

poj 2352-Stars

链接:http://poj.org/problem?id=2352 因为题目给出的数据y是非递减的,所以y可以直接忽略掉,题目不是很难,比较适合练手,给出线段树和树状数组做的代码 线段树: #include #include #define MAXN 32010 int sum[15010]; struct node { int l,r; int s; }t[4*

yjCola 903

hdu 3255 Farming(扫描线、求立方体交)

hdu 3255 Farming 纠结了几个小时,不过还是很值得的,x

yjCola 874

poj 3145 Harmony Forever(线段树)

poj 3145 Harmony Forever 奇葩怪异吐血题,无力duo'shuo

yjCola 873

poj 2482 Stars in Your Window(线段树,扫描线)

poj 2482 Stars in Your Window 题意,用一个矩形qu

yjCola 872

hdu 3333 Turing Tree 线段树

链接:http://acm.hdu.edu.cn/showproblem.php?pid=3333 题意:给出n个数的一个序列,询问m次,每次询问区间[i,j]内改序列不同数之和,就是说该区间如果某个数出现多次,则只算一次。 这个题要从正面去做太难太难,反正我是不会。 线段树域保存区间不同数之和。 先把所有的询问保存下来,然后以右端点递增排序,遇到右端点相同的怎么排都无所谓。 然

yjCola 834

hdu 1256 Counting Squares

链接:http://acm.hdu.edu.cn/showproblem.php?pid=1264 题意:在一个直角坐标系中给出若干个矩阵对角线两个点的坐标,求所有的矩形所覆盖的面积,x,y范围[0,100],且是整数 这个题分到线段树那类的,但是看了题后感觉范围也比较小,直接数组暴力模拟应该不会超时,结果和所想一样。不过最近在学线段树,还是要慢慢研究线段树的做法,想到后再贴线段树的代码。

yjCola 819
上一篇: poj 2481 Cows(线段树)
下一篇: hdu 3308 LCIS(区间合并)
yjCola
博客等级 码龄14年 4粉丝 138原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值