2 kadyssss kadyssss 于 2014.02.09 00:26 提问

一道可能跟动态规划有关的题目

公共条件:

一个农民 购买价格 100块, 20秒生产 1个 小麦
小麦工厂 lv1 需要 150块, lv2 需要 100块, lv3 需要 150块. 花15秒, 第n级的小麦工厂最大可以将 n 个小麦 , 加工成中麦
中麦工厂 lv1 需要 200块, lv2 需要 150块, lv3 需要 200块. 花15秒, 第n级的中麦工厂最大可以将 n 个中麦 + n 个水, 加工成大麦
大麦工厂 lv1 需要 250块, lv2 需要 200块, lv3 需要 250块. 花15秒, 第n级的大麦工厂最大可以将 3*n 个大麦 + n 个油, 加工成超级麦

水和油都在固定工厂出售, 该工厂需要 13 秒将物品生产出来
水 购买价格 10块
油 购买价格 30块

农民数量无上限,招募农民不需要时间
工厂建造和升级都不需要时间
固定工厂不需要建造一开始就有
马车花 15秒, 将产品卖到市场, 只有一辆马车. 马车一次只能装 2种产品, 每种产品最多 5 个
农民 出售价格 50块
小麦 出售价格 10块
中麦 出售价格 40块
大麦 出售价格 120块
超级麦 出售价格 900块
几个独立的问题, 希望能用程序的方式求解
1.一开始给 1个农民, 100块, 求获得 2小麦 的最短时间
2.一开始给 2个农民, 200块, 求获得 300块, 5小麦 的最短时间
3.一开始给 2个农民, 280块, 求获得 320块, 4小麦, 1个中麦 的最短时间
4.一开始给 2个农民, 130块, 小麦工厂lv1, 求获得 4个农民, 10小麦, 8个中麦 的最短时间
5.一开始给 3个农民, 100块, 小麦工厂lv1, 求获得 250块, 6中麦, 1个大麦 的最短时间
6.一开始给 3个农民, 150块, 小麦工厂lv2, 求获得 300块, 10中麦, 2个大麦 的最短时间
7.一开始给 0个农民, 340块, 小麦工厂lv1, 中麦工厂lv2, 求获得 10个农民 的最短时间

附加说明
某个目标达到后, 就算完成而不需要一直保持. 例如, 5个小麦为目标, 则生产5个小麦即可, 生产过程中卖掉小麦没有关系
但有的目标必须达到了才能算完成, 比如 300块(或者农民), 必须总金钱量达到300, 然后才能随便花, 如果生产过程中总金钱量不足300, 即便卖东西已经赚了超过300也不行.

部分人工分析:
1.买 1农民 100块, 20秒后 获得 2小麦, 最短时间 20秒
2.卖 2农民 15秒后获得 100块, 总共 300 块, 金币目标达成. 买 3个农民, 2*20秒后获得 6小麦, 小麦目标达成, 最短时间 15+2*20
3.卖 1农民 15秒后获得 50块, 总共 330 块, 金币目标达成, 购买1农民 100块, 建造 小麦工厂lv1 150块. 于此同时 20秒后 没卖的农民产 1小麦, 丢入小麦工厂 20+15秒后获得 1中麦, 中麦目标达成
15+20 秒后, 新买的农民产 1小麦, 20+20秒后, 没卖的农民产 1小麦, 15+20+20 秒后, 新买的农民产 1小麦, 共 4小麦, 小麦目标达成. 最短时间 15+20+20 秒

希望可以通过程序的方式求得最优解.
如果没有直接答案也欢迎大家讨论.

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!