HDU 1421 搬寝室 DP

HDU 1421 搬寝室 动态规划 Description 胡老师马上要搬新家了,可是搬家真的是一个很累的活,看着家里的n件物品, 胡老师已经凌乱了,因为物品实在太多。于是胡老师想了又想,决定先随便搬2* p件过去就行了。 现在,胡老师发现每搬一次的疲劳度是和左右手的物品的重量差的平方成正比,( 每次左手一件右手一件) ,如果胡老师左手拿重量为3的物品, 右手拿重量为6的物品, 则他搬完这次的疲劳度为(6-3)^2 = 9. 阅读详情

http://acm.hdu.edu.cn/showproblem.php?pid=1421

题目:

搬寝室是很累的(T T ,这学期才搬寝室),xhd要从n件物品中搬走2*k件,(左右手各拿一件),他的每次疲劳度和左右手的物品的重量差的平方成正比,求搬完后最小的疲劳度。


设dp[i][j]为i件物品中选择j对的最小疲劳度。则若包含第i件物品则dp[i][j]=dp[i-2][j-1] * (weight[i]-weight[i-1])*(weight[i]-weight[i-1])

若不包含第i件则dp[i][j]=dp[i-1][j]。

则 dp[i][j]= min (dp[i-1][j], dp[i-2][j-1] * (weight[i]-weight[i-1])*(weight[i]-weight[i-1]) );

还有初始化的问题。。。

j=0的时候应该是0啊啊啊啊啊。。。WA了一次


#include<cstdio>
#include<algorithm>
using namespace std;
const int INF=INT_MAX;
const int MAXN=2000+10;
int weight[MAXN];
int dp[MAXN][MAXN>>1]={0};
inline int getweight(int i)
{
	return (weight[i]-weight[i-1])*(weight[i]-weight[i-1]);
}
int main()
{
	int n,k;
	while(~scanf("%d%d",&n,&k))
	{
		for(int i=1;i<=n;i++)
			scanf("%d",&weight[i]);

		sort(weight+1,weight+n+1);

		for(int i=0;i<=n;i++)
			for(int j=1;j<=k;j++)
				dp[i][j]=INF;

		for(int i=2;i<=n;i++)
		{
			//dp[i][j] 表示前i件物品取 j 对
			for(int j=1;j+j<=i;j++)
				dp[i][j]= min (dp[i-1][j], dp[i-2][j-1] + getweight(i));
		}

		printf("%d\n",dp[n][k]);
	}

	return 0;	
}


用HFSS复现经典论文:从零搭建带孔缝屏蔽箱体模型(附完整建模步骤与避坑指南) 本文详细介绍了如何使用HFSS电磁仿真软件复现经典论文中的带孔缝屏蔽箱体模型,包括从零搭建模型、设置激励与边界条件、求解优化及结果验证的全过程。特别提供了建模中的布尔运算陷阱、激励设置技巧等实操难点的避坑指南,帮助工程师和学生深入理解电磁屏蔽效能研究。 阅读详情

相关推荐

Nginx配置Cookie安全属性:HttpOnly、Secure、SameSite实战指南

Cookie是Web应用中维持用户状态的核心机制,其安全配置直接关系到会话管理与身份认证的可靠性。从原理上讲,HttpOnly属性可防止XSS攻击窃取Cookie,Secure属性确保Cookie仅在HTTPS加密连接中传输,而SameSite属性则用于控制跨站请求时Cookie的发送行为,能有效防御CSRF攻击。这些安全属性的技术价值在于构建纵深防御体系,提升应用的整体安全性。在现代浏览器(如Chrome 80+)默认将未明确声明的Cookie视为SameSite=Lax的背景下,正确配置这些属性变得尤为

weixin_33783283的博客 320

HDU 1421 搬寝室 (DP)

题目链接:HDU 1421 搬寝室 中文题。 dp[i][j] 的意义是:前i件物品取2*j 件的最小疲劳值 先从小到大排序。 当j==2*i ,dp[i][j]=dp[i-2][j-1]+(a[i]-a[i-1])*(a[i]-a[i-1]); 当j>2*i,dp[i][j]=min(dp[i-1][j],dp[i-2][j-1]+(a[i]-a[i-1])*(a[i]-a[i-1])

n-1 716

Android14_MTK调试LCD屏功能

android14 MTK平台调试LCD屏

m0_37786046的博客 1471

HDU - 1421 搬寝室 (DP)

题目链接:HDU - 1421 搬寝室题意:n件物体里面,取2*k件(每次2件),每次疲劳度为两件物体质量差的平方,求结束后的最小疲劳度因为相邻的质量差最小,所以可以先排序,每次只用考虑从相邻的地方取对于每一个物体,分为取、不取两种可能(类似01背包)状态:dp[i][j]:表示从j个里面选2*i个时,最小的疲劳度转移方程:...

weixin_34217773的博客 175

LSCM最小二乘保角参数化

LSCM最小二乘保角参数化 最小二乘思想 已知一组点的数据(x,y) x x1x_1x1​ x2x_2x2​ x3x_3x3​ … xnx_nxn​ y y1y_1y1​ y2y_2y2​ y3y_3y3​ … yny_nyn​ 可以近似为线性关系 y=ax+by=ax+by=ax+b ,目标为确定常数 aaa , bbb ; 解法:找到 aaa , bbb ,使得所有 yiy_iyi​ 与 axi+bax_i+baxi​+b 偏差的平方和 Q=∑i=1n(yi−axi−b)2 Q=\s

weixin_49732532的博客 4252

TLS回调函数–一文看懂(详)

TLS回调函数 CTF RE

Joyce_hjll的博客 3729

HDU 1421 搬寝室(dp)

题目链接:HDU 1421 搬寝室 dp。 思路(蓝飞技术部落格): 每对物品都应是重量最为接近的物品,也就是说对n件物品排序后,每对物品都应该是连续的。 证明大家都会,就此略过。 以动态规划的思想来思考本题: 定义数组a[i]为搬第i对物品所消耗的疲劳值;数组f[n][k]来表示在n件物品中搬k对的最佳状态,而达到这一状态的决策可能为: 第n件物品不搬,即在前n -

fobdddf的专栏 676

别再手动算临界转速了!用ANSYS Workbench 2023 R2快速搞定转子坎贝尔图(附完整APDL命令流)

本文详细介绍了如何利用ANSYS Workbench 2023 R2快速生成转子坎贝尔图,实现全自动临界转速分析。通过对比传统手动计算与Workbench自动化流程的效率差异,展示了其在旋转机械设计中的革命性优势,包括大幅缩短分析周期、提升精度至98.7%。文章还提供了完整的APDL命令流和实战案例,帮助工程师快速掌握这一高效工具。

weixin_42699679的博客 471

HDU 1421 搬寝室[DP]

搬寝室 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 17775    Accepted Submission(s): 6031 Problem Description 搬寝室是很累的,xhd深有体会.时间追述2006年

code_or_code 1025

OpenBCI脑电帽硬件DIY与低成本搭建实战

本文详细介绍了如何通过第三方兼容硬件和开源设计,低成本DIY一套功能完备的OpenBCI脑电采集系统。从硬件选购、组装、软件配置到信号调试,提供了完整的实战指南,将总成本控制在千元级别,使脑机接口技术对爱好者、学生和研究者变得更加触手可及。

weixin_29322855的博客 786

AEJoy —— 表达式之仅限在某一维摆动【JS】

效果图 wiggle() 的作用仅限于水平方向 想法 wiggle() 确实是一个非常方便的工具,但有时您希望对它有更多的控制。在本例中,我们希望仅将摆动限制在水平方向。 设计 要理解 wiggle() 最重要的一点是,它生成的结果与应用它的属性具有相同的维度。例如,如果你将 wiggle() 应用于 3D 层的 position 属性,结果将是一个由三个元素组成的数组(x、y 和 z 各一个)。我们需要做的就是将 wiggle() 的结果捕捉到一个变量(我们称之为 “w” ),然后从这个变量中提取我们想

ShaderJoy 的兴趣技术杂货铺 2094

hdu 题目1421 搬寝室(DP)

搬寝室 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 13141    Accepted Submission(s): 4441 Problem Description 搬寝室是很累的,xhd深有体会.时间追述2

Hanks软件库 1207

实战全解|大疆司空2二次开发:从接口开发到第三方业务系统深度融合

大疆司空2二次开发是实现行业无人机定制化应用的关键,通过OpenAPI后端对接+前端组件集成的组合方式,可快速完成功能定制,而与第三方业务系统的深度融合,能彻底打通“业务下发-设备执行-数据回传-流程闭环”的全链路,让无人机管控真正融入行业业务流程。开发过程中,建议优先采用私有版部署保障数据安全,通过中间适配层降低系统耦合度,结合实际业务场景打磨功能,避免过度开发。随着大疆开发者生态的完善,司空2的二次开发能力将持续升级,为更多行业无人机应用提供技术支撑。

2501_93651177的博客 967

hdu1421搬寝室DP(ACM题目,动态规划)

hdu1421搬寝室DP(ACM题目,动态规划) 分类: 学习总结 数据结构和算法 2011-11-07 19:14 327人阅读 评论(0) 收藏 举报 分析:dp[i][j]表示前i个元素中 j 对数的最小差平方和       dp[i][j] = min(dp[i-1][j], dp[i-2][j-1] + (weight[i] - weight[i-1

wenlovingliu的专栏 656

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

HDU 1421 搬寝室 二维DP

传送门:HDU 1421 搬寝室分析: 先对n中物品的重量排序 令dp[i][j]表示前i个物品中选j对的最小疲劳度。 则dp[i][j]可能含有第i个物品(这种情况下,第i种物品一定是和第i-1个物品配对), 则dp[i][j]=dp[i-2][j-1]+(val[i]-val[i-1])*(val[i]-val[i-1]) dp[i][j]的j对也可能不含有第i个物品,此时有 dp[

知 识 不 是 装 饰。 431

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Hdu 1421 搬寝室

Hdu 1421 搬寝室 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1421 解题思路: 对于每一位的物品,都有取与不取两种做法,如果取了,那就要加上疲劳值,不取,那就等于前面算好的结果,(初始化要完整),用二维dp来处理,i表示物品数,j表示物品对数,状态转移方程:dp[i]j=min(dp[i-1]j,dp[i-2][j-1]+(num[i...

weixin_43823753的博客 256

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

HDU-1421 搬寝室 【DP】

Problem Description 搬寝室是很累的,xhd深有体会.时间追述2006年7月9号,那天xhd迫于无奈要从27号楼搬到3号楼,因为10号要封楼了.看着寝室里的n件物品,xhd开始发呆,因为n是一个小于2000的整数,实在是太多了,于是xhd决定随便搬2*k件过去就行了.但还是会很累,因为2*k也不小是一个不大于n的整数.幸运的是xhd根据多年的搬东西的经验发现每搬一...

160

HDU 1421 搬寝室 dp

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1421 思路:思路来自百度。             这是一道dp,先对数组排序,那么可以求单个数的左右最优解。定义dp[i][j]为从前i个数中取j对数,符合题意的要求,假设dp[i][j]中有第i个物品,那么第i个物品一个和第i-1个物品配对,于是有dp[i][j] = dp[i-2][j] + (

弱智就要多努力 575

HDU 1421 搬寝室(DP)

先把物品重量从小到大排序 d[i][j]表示前i件物品选j对的最小疲劳 若选了第i个物品 那么和它一对的必是第i-1个物品 注意是前i件 i=j*2时 没有选择 d[i][j]=d[i-2][j-1]+(w[i]-w[i-1])^2 i>j*2时 存在第i个选或者不选之分 若选了第i个的话 那么问题就转化为在i-2个物品中选j-1个了 若不选第i个的话 问题转化为在i-1个物品中选j个了 那么就有转移方程d[i][j]=min(d[i-1][j],d[i-2][j-1]+(w[i]-w[i-1

Good morning,good afternoon and good night 963

hdu1421 搬寝室(dp)

我的第一个dp程序 哎! 可惜状态方程不是自己想的 有点小小的遗憾!! 搬寝室 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Submission(s):107 Accepted Submission(s):40 Problem De...

angtongyou1893的博客 142

hdu 1421 搬寝室(dp)

Problem Description 搬寝室是很累的,xhd深有体会.时间追述2006年7月9号,那天xhd迫于无奈要从27号楼搬到3号楼,因为10号要封楼了.看着寝室里的n件物品,xhd开始发呆,因为n是一个小于2000的整数,实在是太多了,于是xhd决定随便搬2*k件过去就行了.但还是会很累,因为2*k也不小是一个不大于n的整数.幸运的是xhd根据多年的搬东西的经验发现每搬一次的疲劳度是和...

weixin_30409849的博客 88

HDU - 1421 搬寝室(经典DP)

Description 搬寝室是很累的,xhd深有体会.时间追述2006年7月9号,那天xhd迫于无奈要从27号楼搬到3号楼,因为10号要封楼了.看着寝室里的n件物品,xhd开始发呆,因为n是一个小于2000的整数,实在是太多了,于是xhd决定随便搬2k件过去就行了.但还是会很累,因为2k也不小是一个不大于n的整数.幸运的是xhd根据多年的搬东西的经验发现每搬一次的疲劳度是和左右手的物品的重量差的...

qq_39352598的博客 319

ACM第6天 Dp进阶HDU 1421 搬寝室

搬寝室 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 18724    Accepted Submission(s): 6338 Problem Description 搬寝室是很累的,xhd深有体会.时间追述200

lccurious的专栏 620
上一篇: ZOJ 1494 Climbing Worm 数学水题
下一篇: POJ 2590 Steps (ZOJ 1871)
hr_whisper
博客等级 码龄14年 132粉丝 322原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值