bzoj2002:[Hnoi2010]Bounce 弹飞绵羊

qcom bypass node介绍 介绍qcom bypass node,以及如何让其生效 阅读详情

思路:动态树。把每个装置看成点,能弹到的装置连边,能弹飞的装置连到n+1号点,每个点点权设为1,这样问几次弹飞就可以转化为该点到n+1号点的路径的点权和。

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
const int maxn=200010;
using namespace std;
int n,m,next[maxn];char ch;

void read(int &x){
	for (ch=getchar();!isdigit(ch);ch=getchar());
	for (x=0;isdigit(ch);ch=getchar()) x=x*10+ch-'0';
}

struct LCT{
	int c[maxn][2],fa[maxn],size[maxn],rev[maxn];
	inline void update(int x){size[x]=size[c[x][0]]+size[c[x][1]]+1;}
	inline bool isroot(int x){return (c[fa[x]][0]!=x)&&(c[fa[x]][1])!=x;}
	inline int which(int x){return c[fa[x]][1]==x;}
	inline void flip(int x){rev[x]^=1,swap(c[x][0],c[x][1]);}
	inline void down(int x){if (rev[x]) flip(c[x][0]),flip(c[x][1]),rev[x]=0;}
	void relax(int x){if (!isroot(x)) relax(fa[x]);down(x);}
	void rotate(int x){
		int y=fa[x],z=fa[y],nx=which(x),ny=which(y);
		fa[c[x][!nx]]=y,c[y][nx]=c[x][!nx];
		fa[x]=z;if (!isroot(y)) c[z][ny]=x;
		fa[y]=x,c[x][!nx]=y;update(y);
	}
	void splay(int x){
		relax(x);
		while (!isroot(x)){
			if (isroot(fa[x])) rotate(x);
			else if (which(x)==which(fa[x])) rotate(fa[x]),rotate(x);
			else rotate(x),rotate(x);
		}
		update(x);
	}
	void access(int x){for (int p=0;x;x=fa[x]) splay(x),fa[c[x][1]=p]=x,update(x),p=x;}
	void makeroot(int x){access(x),splay(x),flip(x),update(x);}
	void link(int a,int b){makeroot(a),fa[a]=b;}
	void cut(int a,int b){makeroot(a),access(b),splay(b),c[b][0]=fa[a]=0;}
	void query(int a){makeroot(n+1),access(a),splay(a),printf("%d\n",size[c[a][0]]);}
	void modify(int a,int k){int t=a+k>n?n+1:a+k;cut(a,next[a]),link(a,t),next[a]=t;}
}T;

int main(){
	read(n),T.size[n+1]=1;
	for (int i=1,a;i<=n;i++) read(a),T.fa[i]=min(i+a,n+1),T.size[i]=1,next[i]=T.fa[i];
	read(m);
	for (int i=1,op,a,k;i<=m;i++){
		read(op),read(a),a++;
		if (op==1) T.query(a);
		else read(k),T.modify(a,k);
	}
	return 0;
}


Xilinx SDK工程编译、链接、调试注意事项 1、添加工程 启动SDK时选取workspace,如下图所示: 对应的workpace文件夹中会生成如下几个文件: 如果当前workspace是首次加载工程,SDK会进入启动界面 点击Import Project,导入已有工程 点击Browse,添加工程路径,一个完整的工程包含一个bsp文件夹,一个HW文件夹,和一个src文件夹(添加C功能函数) 点击Fini... 阅读详情

相关推荐

BDD测试之Behave使用入门

BDD测试(Behavior-Driven Development Testing)是一种基于“行为驱动开发”(BDD)理念。

想要成为酷盖但是失败的小明 580

BZOJ2002: [Hnoi2010]Bounce 弹飞绵羊

【传送门:BZOJ2002】 简要题意:   给出n个点,一个人站在i点一开始可以飞到i+a[i]的地方,一旦飞出了n-1的位置就算作弹飞了   有m种操作,其中一种可以改变a[i],另一种是求出从i点开始飞多少次就会被弹飞 题解:   LCT例题   因为原题中的位置是0到n-1,所以我们把位置弄成1到n,好处理一点   题目就变成一旦飞出了n的位置就算作弹飞了   然后...

weixin_30908707的博客 137

STM32新手必看:3分钟搞定ST官网资料下载(附F0系列手册+外设库下载技巧)

本文为STM32开发新手提供高效获取ST官网技术资料的完整指南,重点介绍如何快速下载STM32F0系列数据手册和外设库。通过系统性的资源分类解析和实用下载技巧,帮助开发者快速定位所需文档,建立本地知识库,提升开发效率。

ujm5678901的博客 269

BZOJ2002 [HNOI2010]Bounce 弹飞绵羊

Address 洛谷P3203 BZOJ2002 Solution LCT" role="presentation" style="position: relative;">LCTLCTLCT 模板题…… 因为原图无环,把位置看做 n" role="presentation" style="position: relative;">nnn 个点,用 LCT" role="prese

Log_x's Blog 366

OpenClaw 聪明设置指南(真实可用方案)

本文介绍了OpenClaw AI系统的配置与优化指南,主要内容包括:1)基础配置,涵盖初始化流程、安全设置和配置文件位置;2)模型分层策略,推荐主力模型与降级方案;3)性能优化,包括推理加速和内存管理;4)智能提升方法,如人格定义和技能安装;5)高级功能如多Agent协同和Token优化。文章提供了详细的配置命令和参数说明,帮助用户根据需求平衡性能与成本,实现高效AI助手部署。

qq_43344878的博客 709

线性回归做糖尿病分析(diabetes数据集),并分析单个特征值与病情的关系

1.diabetes数据集 共442个样本,每个样本有十个特征,分别是 [‘age’, ‘sex’, ‘bmi’, ‘bp’, ‘s1’, ‘s2’, ‘s3’, ‘s4’, ‘s5’, ‘s6’],对应年龄、性别、体质指数、平均血压、S1~S6一年后疾病级数指标。 Targets为一年后患疾病的定量指标,值在25到346之间。 ...

t18438605018的博客 1万+

【HNOI 2010】弹飞绵羊

算法标签:LCT

forever_dreams的博客 354

Multisim仿真电路:(十二)MOS管缓启动电路设计与优化

本文详细介绍了基于Multisim的MOS管缓启动电路设计与优化方法。通过分析米勒平台效应,探讨RC参数选择、多级设计和有源电路等技巧,有效抑制冲击电流并优化开关损耗。文章结合仿真实例,提供实用的设计策略和实际应用注意事项,帮助工程师提升电源管理系统的可靠性。

pytorch8learner的博客 237

HYSBZ-2002 Bounce 弹飞绵羊(分块)

题意 nnn 个装置排成一排,第 iii 个装置都有一个弹力系数 kikik_i (ki&gt;0)(ki&gt;0)(k_i>0),能让绵羊向后弹 kikik_i 格,当绵羊弹出这 nnn 个装置,即为弹飞。在线完成 mmm 次操作,操作分两种:修改某个弹簧的弹力系数,把绵羊放在一号弹簧并询问弹多少次将弹飞。 1≤n,m≤100001≤n,m≤10000 1 \leq n,m \leq 1...

Paulliant的博客 429

华三模拟器实战:3分钟搞定路由器DHCP地址池配置(附常见错误排查)

本文提供华三模拟器中路由器DHCP地址池的实战配置指南。通过分步详解,帮助用户在3分钟内完成基础设置,并深入讲解多地址池、中继配置等进阶应用。文章重点剖析了DHCP服务无法工作的常见原因,提供从客户端到服务器的系统性排错方法,助力快速定位并解决地址分配失败、获取参数错误等典型问题。

w1x2y3的博客 360

基于PyTorch的BP神经网络PID控制器动态调参实战

本文详细介绍了基于PyTorch的BP神经网络PID控制器动态调参实战,结合BP神经网络的自适应能力和PID控制算法的经典优势,实现工业控制中的高效参数调整。通过PyTorch实现BP-PID融合架构,包括网络设计、损失函数优化及动态调参技巧,显著提升控制性能,适用于温度控制、电机控制等场景。

weixin_29094775的博客 520

bzoj 2002: [Hnoi2010]Bounce 弹飞绵羊

Description某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏。游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置设定初始弹力系数ki,当绵羊达到第i个装置时,它会往后弹ki步,达到第i+ki个装置,若不存在第i+ki个装置,则绵羊被弹飞。绵羊想知道当它从第i个装置起步时,被弹几次后会被弹飞。为了使得游戏更有趣,Lo

Time_major 738

物理信息神经网络(PINNs)在交通运输领域的应用

物理信息神经网络(PINNs)在交通运输领域的应用研究结合了数据驱动与物理模型约束,通过嵌入交通流守恒定律等物理信息,显著提升了交通状态估计与预测的精度。该技术仅需少量观测数据(流量、速度、密度等),即可实现高精度建模,尤其适用于数据稀疏场景。研究重点包括:交通状态估计与预测、参数辨识、交通控制优化等领域,同时面临计算成本高、物理模型依赖性等挑战。未来需解决大规模异构数据处理问题,以进一步推动智能交通系统发展。

qq_49609070的博客 944

BZOJ 2002: [Hnoi2010]Bounce 弹飞绵羊

2002: [Hnoi2010]Bounce 弹飞绵羊 Time Limit:10 SecMemory Limit:259 MBSubmit:13360Solved:6782[Submit][Status][Discuss] Description 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏。游戏一...

126

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

BZOJ 2002: [Hnoi2010]Bounce 弹飞绵羊【分块】

2002: [Hnoi2010]Bounce 弹飞绵羊 Time Limit: 10 Sec Memory Limit: 259 MB Description 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏。游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置设定初...

aiweiluan5095的博客 145

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

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

BZOJ 2002 [Hnoi2010]Bounce 弹飞绵羊:分块

题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2002 题意:   某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏。   游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置设定初始弹力系数ki,当绵羊达到第i个装置时,它会往后弹ki步,达到第i+...

a1392136的博客 148

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

bzoj 2002: [Hnoi2010]Bounce 弹飞绵羊 動態樹

2002: [Hnoi2010]Bounce 弹飞绵羊 Time Limit:10 SecMemory Limit:259 MBSubmit:4055Solved:2172[Submit][Status] Description 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏。游戏一开始,Lostmon...

alex151194310的博客 108

bzoj2002: [Hnoi2010]Bounce 弹飞绵羊

链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2002 题意:中文题。。 分析:先将这个数组分块,每块大小为sqrt(n),然后设定f[i]表示从i出发到第一个和i不同块的点所需的步数,nex[i]表示那个第一个和i不同块的点的位置。然后我们每次查询的时候就能最多sqrt(n)次就能跳出n长度了,修改的话可以很明显的知道改变第i个点的系数

Fsss 495

BZOJ 2002: [Hnoi2010]Bounce 弹飞绵羊(LCT裸题)

题目链接:BZOJ 2002: [Hnoi2010]Bounce 弹飞绵羊 题意: 有n个节点,每个节点有个弹力系数xi,表示第i个节点可以弹到i+xi,如果超过了n就弹飞。 现在有两个操作: 1 x 询问从x开始要弹几次才能弹飞。 2 x y 将x的弹力系数更改为y。 题解: 这题可以分块可以LCT。 不过nlongn的均摊LCT比nsqrt(n)的分块慢,因为分块的常数小。 ...

weixin_30708329的博客 123

bzoj2002: [Hnoi2010]Bounce 弹飞绵羊 [分块][LCT]

Description 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏。游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置设定初始弹力系数ki,当绵羊达到第i个装置时,它会往后弹ki步,达到第i+ki个装置,若不存在第i+ki个装置,则绵羊被弹飞。绵羊想知道当它从第i个装置起步时,被弹几次后会被弹飞。为了...

dirushi6322的博客 119
上一篇: bzoj1036树的统计Count
下一篇: bzoj1180: [CROATIAN2009]OTOCI
thy_asdf
博客等级 码龄12年 16粉丝 186原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值