Python 如何改进我的优化算法?

Python 如何改进我的优化算法?,python,pandas,numpy,mathematical-optimization,nonlinear-optimization,Python,Pandas,Numpy,Mathematical Optimization,Nonlinear Optimization,最近,我在玩我最喜欢的游戏之一,遇到了一个问题: 这个游戏有一个商店,在那个商店里,特定角色的皮肤被出售,我打算买它们。 有34张皮可供使用,每张皮的价格为游戏币1800学分。 获得这些积分的唯一方法是用真金白银购买一包一包的信用卡 共有6个包,如下所示: 收拾 信贷额 价格 1. 600 19.90 2. 1200 41.50 3. 2670 83.50 4. 4920 144.90 5. 7560 207.90 6. 16000 414.90 你们在这里试图解决的是一个变量。这意味着在多项式

最近,我在玩我最喜欢的游戏之一,遇到了一个问题: 这个游戏有一个商店,在那个商店里,特定角色的皮肤被出售,我打算买它们。 有34张皮可供使用,每张皮的价格为游戏币1800学分。 获得这些积分的唯一方法是用真金白银购买一包一包的信用卡

共有6个包,如下所示:

收拾 信贷额 价格 1. 600 19.90 2. 1200 41.50 3. 2670 83.50 4. 4920 144.90 5. 7560 207.90 6. 16000 414.90
你们在这里试图解决的是一个变量。这意味着在多项式时间内不可能有解

但是,您可以进行一些优化: 在任何情况下都不会有人购买第2包。它严格低于购买2或1包1,因此我们可以立即消除它的算法,这样它就不必浪费时间

输入数学 从pprint导入pprint 将numpy作为np导入 def最便宜的_选项 包装学分:np.ndarray, 包装成本:np.ndarray, 将问题推广到任意数量的积分 不仅仅是1_800的倍数 min_学分:int, 上一次分配:np.ndarray=None: def permuttotal:int,长度:int,至少:int: 改编自:https://stackoverflow.com/a/7748851/12998205 创建长度为'length'的所有可能排列,以便
`至少你在这里试图解决的是一个变量。这意味着在多项式时间内不可能有解

但是,您可以进行一些优化: 在任何情况下都不会有人购买第2包。它严格低于购买2或1包1,因此我们可以立即消除它的算法,这样它就不必浪费时间

输入数学 从pprint导入pprint 将numpy作为np导入 def最便宜的_选项 包装学分:np.ndarray, 包装成本:np.ndarray, 将问题推广到任意数量的积分 不仅仅是1_800的倍数 min_学分:int, 上一次分配:np.ndarray=None: def permuttotal:int,长度:int,至少:int: 改编自:https://stackoverflow.com/a/7748851/12998205 创建长度为'length'的所有可能排列,以便
`至少非常感谢你的回答和帮助!太不可思议了。这段代码更激起了我的好奇心,我还是会从头到尾地学习它!非常感谢您的回答和帮助!太不可思议了。这段代码更激起了我的好奇心,我还是会从头到尾地学习它!