HDU 1158 Emloyment Planning 解题报告

 

问题描述:

       某公司经理知道n个月中每个月所需要员工的最少人数,但是考虑到:每雇佣一个人要花费hr美元、每员工月薪为sl美元、没解雇一员工需要花费fr美元,经理发现不同的雇佣方式(每月雇佣人数不同)导致总的花费不同。该经理想知道公司n个月的最小花费。(如果某月某个员工没有工作,但没有被解雇,公司也得对其发薪金)

 

问题分析:

     定义状态:f[i][j]为第i个月底该公司雇佣了j个员工时的最小花费,设month[i]为第i个月该公司所需员工的最少人数。弄清状态之后,再由第i-1个月向第i个月转移的过程中,第i-1个月所有的合法状态为:f[i-1][t](month[i-1]<=t<=lmt,lmt=max(month[1...n])),设转移的代价为cost,则很容易得到状态转移方程:f[i][j]=max{f[i-1][t],month[i-1]<=t<=lmt}+cost(t,j)};其中,cost(t,j)表示当前月底人数为t时,向下一个月人数为j转移时公司所要付出的花费。

 

代码


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值