和Leo一起做爱线段树的好孩子CTT2012楼房重建

博客主要围绕求一个伪LIS展开,该伪LIS是指从右到左上升的长度,同时还提到了维护斜率相关内容。

求一个伪LIS

维护斜率

求一个伪的LIS

就是从右到左上升的长度

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<iomanip>
using namespace std;
#define lc (p<<1)
#define rc (p<<1|1)
const int N=2e5+100;
const double eps=1e-15;
bool cmp(double sum){
	if(fabs(sum)<eps)return 0;
	else return sum>0?1:0;
}
struct Segment_Tree{
	struct Node{
		double maxSloop;
		int sum;
	}T[N<<2];
	inline void Build(int p,int l,int r){
		if(l==r){
			T[p].maxSloop=0.0;
			T[p].sum=0;	
			return;	
		}
		int mid=(l+r)/2;
		Build(lc,l,mid  );
		Build(rc,mid+1,r);
	}
	inline int Calc(int p,int l,int r,double height){
		if(l==r){
			return cmp(T[p].maxSloop-height)==1;
		}
		int mid=(l+r)/2;
		if(cmp(T[lc].maxSloop-height)==1)return Calc(lc,l,mid,height)+T[p].sum-T[lc].sum;
		else return Calc(rc,mid+1,r,height);
	}
	inline void Update(int p,int l,int r,int pos,double Sloop){
		if(l==r){
			T[p].maxSloop=Sloop;
			T[p].sum=1;
			return;
		}
		int mid=(l+r)/2;
		if(pos<=mid)Update(lc,l,mid,pos,Sloop);
		else Update(rc,mid+1,r,pos,Sloop);
		T[p].maxSloop=max(T[lc].maxSloop,T[rc].maxSloop);
		T[p].sum=T[lc].sum+Calc(rc,mid+1,r,T[lc].maxSloop);
	}
}Tree;
int n,m;
int main(){
//	freopen("test.in","r",stdin);
	scanf("%d%d",&n,&m);
	Tree.Build(1,1,n);
	for(int i=1;i<=m;i++){
		double x,y;
		scanf("%lf%lf",&x,&y);
		double Sloop=(y*1.0)/(x*1.0);
		Tree.Update(1,1,n,(int)x,Sloop);
		cout<<Tree.T[1].sum<<'\n';
	}
}

 

### NAND闪存中CTT与LTT的区别 在NAND闪存技术领域,CTT(Cell-to-Cell)LTT(Line-to-Line)是两种不同的干扰机制或现象的描述,它们主要涉及存储单元之间的相互影响。以下是两者的具体定义技术参数上的区别: #### 1. CTT(Cell-to-Cell) CTT指的是在同一字线(Word Line)上相邻存储单元之间的干扰。这种干扰通常发生在编程操作期间,当一个存储单元被编程时,其邻近的存储单元可能会受到电场的影响,从而导致读取错误或数据保留问题。 - **产生原因**:由于存储单元之间的耦合效应,特别是在高密度MLC或多层单元(TLC)架构中,这种干扰更加显著[^2]。 - **影响范围**:主要局限于同一字线上的相邻存储单元。 - **缓解方法**:通过改进编程算法、使用更强的纠错码(ECC)以及优化存储单元的设计来减少干扰。 #### 2. LTT(Line-to-Line) LTT指的是不同字线之间(即行间)的干扰。这种干扰可能由寄生电容耦合引起,尤其是在多层堆叠的3D NAND结构中更为明显。 - **产生原因**:字线之间的寄生电容会导致信号串扰,尤其是在高频操作或高电压编程时[^1]。 - **影响范围**:跨字线传播,可能影响到多个存储单元。 - **缓解方法**:通过调整字线驱动器的设计、降低编程电压、增加字线间的绝缘材料厚度等方式来减少干扰。 #### 技术定义总结 - **CTT**:描述的是同一字线上相邻存储单元之间的干扰,主要与单元间耦合效应相关。 - **LTT**:描述的是不同字线之间的干扰,主要与寄生电容耦合效应相关。 两者在NAND闪存的设计优化中都扮演着重要角色,特别是在高密度存储技术3D NAND架构中,需要特别关注这两种干扰对性能可靠性的潜在影响。 ```python # 示例代码:简单的ECC校验实现(与CTT/LTT缓解相关) def ecc_encode(data): # 简单的奇偶校验生成 parity = sum(data) % 2 return data + [parity] def ecc_decode(encoded_data): # 简单的奇偶校验检测 parity = sum(encoded_data[:-1]) % 2 if parity != encoded_data[-1]: print("Error detected!") return encoded_data[:-1] # 测试 data = [1, 0, 1, 1] encoded = ecc_encode(data) print("Encoded:", encoded) decoded = ecc_decode(encoded) print("Decoded:", decoded) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值