动态规划-小朋友过桥问题

这是一道关于动态规划的题目,描述了在夜晚上桥的问题,每次最多两人且需要携带手电筒。解题策略包括贪心法,通过耗时最少的人或两人组合传递手电筒。通过递归、备忘录和自底向上等方式求解,目标是最小化所有小朋友过桥的总时间。
摘要由CSDN通过智能技术生成

 

题目:在一个夜黑风高的晚上,有n(n <= 50)个小朋友在桥的这边,现在他们需要过桥,但是由于桥很窄,每次只允许不大于两人通过,他们只有一个手电筒,所以每次过桥的两个人需要把手电筒带回来,i号小朋友过桥的时间为T[i],两个人过桥的总时间为二者中时间长者。问所有小朋友过桥的总时间最短是多少。

 

解题思路:

方案一、耗时最少的人作为传递,即使用贪心法:每次都由耗时最少的人陪同过河,同时将电筒返回

T(n) = T(n-1)+cost[n] + cost[1]

 

方案二、耗时最少的两人作为传递:目的将耗时最大两人先送到对岸

T(n) = T(n-2)+cost[n] + cost[1]+2cost[2]

过程:

由此可知:

问题T(n)可以分解为T(n-1)和T(n-2)的子问题,然后求这两个子问题中的最优解则为T(n)的最优解:

解决方案:

获取输入值并进行排序处理:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值