- 0
- 0
- 约3.94千字
- 约 3页
- 2022-10-01 发布于北京
- 举报
《摘果实》解题
1、[题目大意]
有两种类型的果树,有两种类型的工人,第一种可以在每一个有两种类型的果树,有两种类型的工人,第一种可以在每一个 时间内摘时间内摘
一棵果实个数不超过 w 的果树。第二种每一个的果树。第二种每一个 时间内摘一棵果树高度不超时间内摘一棵果树高度不超
过h 的果树。(每个工人的w 或h 不同)。给出每颗树的果实个数与果树高度,
求摘完所有果树的最短时间。
2、[算法分析]
这道题很容易考虑到动态规划,但是它用动态规划无法完成。
考虑二分 ,这样只需检验m 分钟内是否可以把所有果树摘完。
考虑二分 ,这样只需检验
将每个果树i 与坐标(W[i]:果实数目, H[i]:果树高度)对应,这样每个第一种类
型的工人可以摘某一横坐标以左的果树,每个第二种类型的工人可以摘某一纵坐
标以下的果树。
从右至左添加这些果树,一旦某一时刻某个第一种类型的工人可以摘当前果
树,则它可以摘之后的所有果树。因此 应尽量保留第一种类型的工人
树,则它可以摘之后的所有果树。因此 应尽量保留第一种类型的工人,即优
先使用第二种类型的工人。
选择第二种类型的工人时,当然应该优先选择可以摘当前果树的
原创力文档

文档评论(0)