【区间dp】 [HNOI2010]合唱队

weblogic启动异常故障处理(boot认证失败) root 用户生成的文件属主为 root,WebLogic进程将无权读取,直接导致认证失败。· ⚠️ 密码必须完全一致:第3步 AdminAccount 命令中设置的密码,与第5步所有 boot.properties 文件中 password= 字段的值,必须保证完全一致。如果您的域下配置了受管服务器实例(如 ms_server1、ms_server2 等),必须逐一更新各实例下的免密启动文件,确保实例重启时密码与AdminServer保持一致,否则实例启动会因认证失败而报错。此步骤至关重要,必须执行。 阅读详情

在这里插入图片描述
题目链接
思路:
我们发现,对于目标序列的每一个区间 [ l , r ] [l, r] [l,r]而言,最后一个进来这个区间的人要么在 l l l要么在 r r r,那么我们可以定义 f [ l , r , 0 ] f[l,r, 0] f[l,r,0]表示最后一个人从左边进入目标序列的 [ l , r ] [l,r] [l,r]区间的所有方案数, f [ l , r , 1 ] f[l,r,1] f[l,r,1]表示最后一个人从右边进入目标序列的 [ l , r ] [l,r] [l,r]区间的所有方案数。我们考虑转移:
首先考虑 f [ l , r , 0 ] f[l,r,0] f[l,r,0],由于最后一个人从左边进入序列,那么他的位置为 l l l,那么倒数第二个人可能的位置为 l + 1 l + 1 l+1和 r r r,如果 h [ l ] < h [ l + 1 ] h[l] < h[l + 1] h[l]<h[l+1]那么 f [ l , r , 0 ] f[l,r,0] f[l,r,0]可以从 f [ l + 1 , r , 0 ] f[l + 1,r,0] f[l+1,r,0]转移来;如果 h [ l ] < h [ r ] h[l] < h[r] h[l]<h[r],那么 f [ l , r , 0 ] f[l,r,0] f[l,r,0]可以从 f [ l + 1 , r , 1 ] f[l + 1,r,1] f[l+1,r,1]转移来。
同理,对于 f [ l , r , 1 ] f[l,r,1] f[l,r,1],如果 h [ r ] > h [ l ] h[r] > h[l] h[r]>h[l],那么 f [ l , r , 1 ] f[l,r,1] f[l,r,1]可以从 f [ l , r − 1 , 0 ] f[l,r - 1,0] f[l,r−1,0]转移来; 如 果 h [ r ] > h [ r − 1 ] 如果h[r] > h[r - 1] 如果h[r]>h[r−1],那么 f [ l , r , 1 ] f[l,r,1] f[l,r,1]可以从 f [ l , r − 1 , 1 ] f[l,r-1,1] f[l,r−1,1]转移来。
初始化所有 f [ i , i , 0 ] f[i,i,0] f[i,i,0]为 1 1 1,其余为 0 0 0,就是默认只有一个人只能从左边进序列。
目标状态为 f [ 1 , n , 0 ] + f [ 1 , n , 1 ] f[1,n,0] + f[1,n,1] f[1,n,0]+f[1,n,1]

AC代码:

#include <iostream>

using namespace std;

const int N = 1005, mod = 19650827;

int n;
int h[N];
int f[N][N][2];

int main()
{
	cin >> n;
	for (int i = 1; i <= n; i ++ ) cin >> h[i];
	
	for (int i = 1; i <= n; i ++ ) f[i][i][0] = 1;
	
	for (int i = 1; i <= n; i ++ )
		for (int l = 1; l + i - 1 <= n; l ++ )
		{
			int r = l + i - 1;
			if (h[l] < h[l + 1]) f[l][r][0] += f[l + 1][r][0];
			if (h[l] < h[r]) f[l][r][0] += f[l + 1][r][1];
			if (h[r] > h[l]) f[l][r][1] += f[l][r - 1][0];
			if (h[r] > h[r - 1]) f[l][r][1] += f[l][r - 1][1];
			f[l][r][0] %= mod;
			f[l][r][1] %= mod;
		}	
	
	cout << (f[1][n][0] + f[1][n][1]) % mod << endl;
	return 0;
}
【汇编】TSR内存驻留程序实现与删除及热键设置——以实现时钟为例 【汇编】TSR内存驻留程序实现与删除及热键设置——以实现时钟为例 最近完成了一个关于时钟中断驻留的汇编大作业,对于TSR很是感兴趣,查阅了不少资料,发现现在很少相关的内容资料。尤其是TSR删除这一块几乎找不到在低的水平完全正确的做法,下面我对于TSR的删除我会介绍一种几乎小程序可以完成的方法。当然,标题中的TSR实现,热键设置我也会一一介绍。 阅读详情

相关推荐

画个板子玩一玩STM32F030F4P6,也许是最便宜的32bit MCU

前言,什么是STM32F030F4P6 STM32目前最便宜的芯片之一应该就是这一块,STM32F030F4P6,这一个芯片没有USB,但是其他都有,引脚少,价格低廉,如果找不到原厂,可以买替代的国产芯片,性能也一样。 不管怎么样也是Cortex-M0,比8bit和16bit的性能都强,总的来说就是低价,引脚少,体积小的同时,还容易开发,有很多模拟输入可玩,还有SPI,硬件I2C等等 所以,这一款MCU真的是从理论来说又便宜又好用,非常适合把玩。 画个板,最小系统 STM32F030其..

arenascat的博客 2万+

P3205 [HNOI2010]合唱队 (区间dp)

[HNOI2010]合唱队 - 洛谷 分析: 根据题意我们发现,小a每次排队的时候,会出现两种情况 当前排入的人比初始队列中前一个人矮,排到最左边 当前排入的人比初始队列中前一个人高,排到最右边 现在给定我们一个理想队列,然后根据这个理想队列推理出有多少种初始队列 根据这个理想队列,其实我们可以发现,固定住一个点之后,初始队列在他后面的人,一定是不断加入到这个点左右两边的。所以固定住这个点之后,可以模拟不断向左向右加人,来获得理想队列。加人实际上就是一个区间左右端点的问题 于是就可以从理想...

qq12323qweeqwe的博客 869

Cluster Computing投稿

在overleaf中新建picins.sty文件,该文件是导入的包在.tex文件中添加以下内容\usepackage{picins}%实现作者简介%下边这块有几个人复制几段\vspace{0\baselineskip} %这一行控制作者间隔,可视情况改数字!!!!!!!!

这里是萤石ym的学习路途,努力搬砖! 5536

【luogu3205】【bzoj1996】 [HNOI2010]合唱队 [区间dp]

P3205 [HNOI2010]合唱队 bzoj1996 很容易想到每一个状态是由最后一个决策决定的 所以就是区间dp的一个经典状态 f[l,r]由最后一步决定 枚举长度 如果a[l]<[r]就由两种状态转移过来 然后是l和l+1比较 r和r-1比较 来判断决策 具体靠代码感性理解 1 #include<iostream> 2 #include<...

weixin_30525825的博客 105

从HSPICE到Spectre:手把手教你搞定不同SPICE仿真器的网表转换(附避坑指南)

本文详细介绍了从HSPICE到Spectre的SPICE仿真器网表转换方法,包括核心语法差异、分步转换流程和常见问题排查。通过实战案例和避坑指南,帮助工程师高效解决不同SPICE仿真器间的兼容性问题,提升集成电路设计效率。

weixin_29745609的博客 368

IOS APP上架被拒 4.3(a) - Design - Spam,成功

成功解决IOS APP上架被拒 4.3(a) - Design - Spam,本篇博客记录了详细过程

qq_40147106的博客 6912

【BZOJ】1996: [Hnoi2010]chorus 合唱队【区间dp】

1996: [Hnoi2010]chorus 合唱队 Time Limit:4 SecMemory Limit:64 MBSubmit:2088Solved:1371[Submit][Status][Discuss] Description Input Output Sample Input 4 1701 1702 1703 1704 Sample ...

weixin_30721899的博客 120

解密美团外卖API:mtgsig和waimai_sign参数生成原理与Python实现

本文深入解析了美团外卖API中核心风控参数mtgsig和waimai_sign的生成原理与实现方法。文章详细拆解了waimai_sign作为业务数据签名、mtgsig作为请求环境签名的不同角色与生成逻辑,并通过Python代码示例演示了如何通过逆向工程、Frida动态Hook等技术手段模拟签名生成过程,为开发者理解移动端API安全机制提供了实战参考。

weixin_29325515的博客 554

区间dp--洛谷P3205 [HNOI2010] 合唱队

我们初始化仅初始化一个方向即可,我们可以默认方向为左边,因为我们只有一个人时方案数应该是1,如果我们初始化两边,那么他可以从右边进来,也可以从左边进来,那么会导致方案数被错误记为2。为了在即将到来的晚会上有更好的演出效果,作为 AAA 合唱队负责人的小 A 需要将合唱队的人根据他们的身高排出一个队形。明显题目应当从局部入手,求出答案队列局部不同方案数累加,且答案区间可以进行划分,明显符合大区间包含小区间的情况,故考虑区间。小 A 心中有一个理想队形,他想知道多少种初始队形可以获得理想的队形。

2301_76623326的博客 2041

FreeRTOS-Plus-CLI使用笔记

FreeRTOS-Plus-CLI使用笔记 一、简介 详细介绍可参考FreeRTOS-Plus-CLI官网地址入口 FreeRTOS+CLI(Command Line Interface, 命令行接口)提供了一种简单、小型、可扩展且RAM高效的方法,使FreeRTOS应用程序能够处理命令行输入。添加一条指令的步骤如下: 提供一个实现命令功能的函数 将命令映射到该功能函数 注册命令 运行命令解释器 命令行调试接口对于排查分析出现的问题提供了很好的接口,可以通过查看传感器信息判断传感器是否正常,可以查看内置

ApexYuan 6964

DPO(Direct Preference Optimization)直接偏好优化

本文介绍了DPO(直接偏好优化)方法,该方法通过简化传统的RLHF(基于人类反馈的强化学习)流程,直接利用人类偏好数据进行模型优化。DPO的核心思想是跳过奖励模型训练和强化学习交互步骤,通过数学推导将优化目标转化为仅与策略概率分布相关的形式。推导表明最优策略与奖励模型之间存在显式关系,从而可以构建直接优化策略的损失函数。与RLHF相比,DPO简化了训练流程,提高了工程实现稳定性,同时保持了同等效果。

TeenLucifer的博客 1956

【区间dp】P3205 [HNOI2010] 合唱队 题解

区间dp好题

guozhetao的博客 1318

YOLO26模型应用过程中的报错处理及疑问解答,涉及环境搭建、模型训练、模块改进、论文写作

本文记录了YOLO26模型的这一系列过程中可能发生的问题,以及大家非常关心的问题,这里统一做了一个记录和解答。

Limiiiing的博客 241

区间dp--P3205 [HNOI2010]合唱队

P3205 [HNOI2010]合唱队 传送门 题目描述 为了在即将到来的晚会上有更好的演出效果,作为AAA合唱队负责人的小A需要将合唱队的人根据他们的身高排出一个队形。假定合唱队一共N个人,第i个人的身高为Hi米(1000<=Hi<=2000),并已知任何两个人的身高都不同。假定最终排出的队形是A 个人站成一排,为了简化问题,小A想出了如下排队的方式:他让所有的人先按任意顺序站成一个...

weixin_43889121的博客 258

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

区间DP-[HNOI2010]合唱队

6

qzh_gyh的博客 365

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

洛谷 P3205 [HNOI2010]合唱队(区间dp)

题目链接: [HNOI2010]合唱队 - 洛谷https://www.luogu.com.cn/problem/P3205 思路: 这题我是看了题解才做出来的,贴一下这位大佬的博客题解 P3205 【[HNOI2010]合唱队】 - zhaohaikun's blog - 洛谷博客 用到了区间dp,每个人有插入到左边和右边两种可能,插入哪边与当前的人和他前面的人的谁比较高有关系。具体思路见代码。 #include <bits/stdc++.h> using namespace ..

bunny_1024的博客 310

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

P3205 [HNOI2010] 合唱队 (区间dp)

洛谷P3205 题解

2403_87530627的博客 660

【区间dp】洛谷 P3205 [HNOI2010]合唱队

dp板子题

weixin_62528401的博客 376

【动态规划dp】区间DP模板 Acwing 282. 石子合并 | P3205 [HNOI2010]合唱队

区间DP 模板 282. 石子合并 #include<iostream> #include<cmath> #include<algorithm> #include<cstdio> #include<cmath> #include<cstring> #define rg register using namespace std; typedef long long ll; int sread() { int x=0,f=1;cha

Lunar Arc的博客 176

P3205 [HNOI2010]合唱队[区间dp]

题目描述 为了在即将到来的晚会上有更好的演出效果,作为AAA合唱队负责人的小A需要将合唱队的人根据他们的身高排出一个队形。假定合唱队一共N个人,第i个人的身高为Hi米(1000<=Hi<=2000),并已知任何两个人的身高都不同。假定最终排出的队形是A 个人站成一排,为了简化问题,小A想出了如下排队的方式:他让所有的人先按任意顺序站成一个初始队形,然后从左到右按以下原则依次将...

weixin_30396699的博客 172

[HNOI2010]合唱队(区间DP)

题目描述 [HNOI2010]合唱队 题目描述 为了在即将到来的晚会上有更好的演出效果,作为AAA合唱队负责人的小A需要将合唱队的人根据他们的身高排出一个队形。假定合唱队一共N个人,第i个人的身高为Hi米(1000<=Hi<=2000),并已知任何两个人的身高都不同。假定最终排出的队形是A 个人站成一排,为了简化问题,小A想出了如下排队的方式:他让所有的人先按任意顺序站成一个初始队形...

Z 543

P3205 [HNOI2010]合唱队(区间dp)

现在菜的连这么明显的区间DP都看不出来了 太菜了太菜了 如果发现是区间dp应该就蛮好写如果发现是区间dp应该就蛮好写如果发现是区间dp应该就蛮好写 定义dp[i][j][0]为合唱人是[i,j]且最后一个人是i定义dp[i][j][0]为合唱人是[i,j]且最后一个人是i定义dp[i][j][0]为合唱人是[i,j]且最后一个人是i dp[i][j][1]最后一个人是jdp[i][j][1]最后一个人是jdp[i][j][1]最后一个人是j #include <bits/stdc++.h> us

jziwjxjd的博客 455

P3205 [HNOI2010]合唱队 区间DP

区间DP

m0_56511205的博客 257

[洛谷]P3205 [HNOI2010]合唱队 (#区间dp)

题目描述 为了在即将到来的晚会上有更好的演出效果,作为AAA合唱队负责人的小A需要将合唱队的人根据他们的身高排出一个队形。假定合唱队一共N个人,第i个人的身高为Hi米(1000<=Hi<=2000),并已知任何两个人的身高都不同。假定最终排出的队形是A 个人站成一排,为了简化问题,小A想出了如下排队的方式:他让所有的人先按任意顺序站成一个初始队形,然后从左到右按以下原则依次将每个人插...

A.pro的博客 611

hnoi2010 合唱队 (区间dp)

题目描述 为了在即将到来的晚会上有更好的演出效果,作为 AAA 合唱队负责人的小 A 需要将合唱队的人根据他们的身高排出一个队形。假定合唱队一共有 N 个人,第 i 个人的身高为 Hi 毫米(1000≤Hi≤2000),并且已知任何两个人的身高都不同。假定最终排出的队形是 N 个人站成一 排。 为了简化问题,小 A 想出了如下排队的方式:他让所有的人先按任意顺序站成一个初始队形,然后从左到右按...

二三两 353

【BZOJ 1996】 [Hnoi2010]chorus 合唱队

区间Dp~

Regina8023 1444
上一篇: 0x57 内容简介与例题习题
下一篇: 【背包dp】[NOIP2014 提高组] 飞扬的小鸟
juruo_c
博客等级 码龄6年 520粉丝 116原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值