小偷来到了一个神秘的王宫,突然眼前一亮,发现5个宝贝,每个宝贝的价值都不一样,且重量也不一样,但是小偷的背包携带重量有限,所以他不得不在宝贝中做出选择,才能使偷到的财富最大,请你帮助小偷计算一下。

输入描述:

宝贝价值:6,3,5,4,6

宝贝重量:2,2,6,5,4

小偷背包容量:10

输出描述:

偷到宝贝的总价值:15

示例1

输入

6,3,5,4,6

2,2,6,5,4

10

输出

15

def situation(m, n):if n - m == 0:return 1loop = mp1 = 1p2 = 1while loop > 0:p1 *= nn -= 1loop -= 1while m > 0:p2 *= mm -= 1return int(p1 / p2)def getMore():lv = [6, 3, 5, 4, 6]lw = [2, 2, 6, 5, 4]bag = 10v_max = 0maxArr = []length = len(lw)for i in range(2, length):for j in range(situation(i, length) ** 2):indexArr = sample(list(range(length)), k=i)w_sum = 0v_sum = 0for k in indexArr:w_sum += lw[k]v_sum += lv[k]if w_sum <= bag and v_sum > v_max:v_max = v_summaxArr = indexArrreturn v_max, maxArrfor i in range(100):maxGet = getMore()print("maxGet-->", maxGet)

运行结果:

maxGet--> (15, [1, 0, 4])
maxGet--> (15, [0, 1, 4])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [0, 4, 1])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [0, 1, 4])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [0, 4, 1])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [0, 4, 1])
maxGet--> (15, [0, 1, 4])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [0, 1, 4])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [0, 1, 4])
maxGet--> (15, [0, 4, 1])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [0, 1, 4])
maxGet--> (15, [0, 1, 4])
maxGet--> (15, [0, 4, 1])
maxGet--> (15, [0, 1, 4])
maxGet--> (15, [0, 4, 1])
maxGet--> (15, [0, 4, 1])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [0, 4, 1])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [0, 4, 1])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [0, 1, 4])
maxGet--> (15, [0, 4, 1])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [0, 1, 4])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [1, 0, 4])
maxGet--> (15, [0, 1, 4])
maxGet--> (15, [0, 4, 1])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [4, 0, 1])
maxGet--> (15, [4, 1, 0])
maxGet--> (15, [1, 4, 0])
maxGet--> (15, [0, 1, 4])

转载于:https://www.cnblogs.com/smoggy/p/10633022.html

【python练习笔记】神秘的王宫相关推荐

  1. 字节跳动大佬的Python自学笔记.pdf

    1. 字节跳动大佬的Python自学笔记 这是我的一个朋友自学资料包,通过这个资料包自学拿到了字节跳动的Offer, 下面是他之前入门学习Python时候的学习资料,非常全面,从Python基础.到w ...

  2. [python教程入门学习]python学习笔记(CMD执行文件并传入参数)

    本文章向大家介绍python学习笔记(CMD执行文件并传入参数),主要包括python学习笔记(CMD执行文件并传入参数)使用实例.应用技巧.基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋 ...

  3. python学习笔记之编写readConfig读写配置文件

    python学习笔记之编写readConfig读写配置文件_weixin_34055910的博客-CSDN博客

  4. Python学习笔记(十一)

    Python学习笔记(十一): 生成器,迭代器回顾 模块 作业-计算器 1. 生成器,迭代器回顾 1. 列表生成式:[x for x in range(10)] 2. 生成器 (generator o ...

  5. Python学习笔记一简介及安装配置

    Python学习笔记一 参考教程:廖雪峰官网https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e54 ...

  6. python学习笔记目录

    人生苦短,我学python学习笔记目录: week1 python入门week2 python基础week3 python进阶week4 python模块week5 python高阶week6 数据结 ...

  7. Python学习笔记(二):标准流与重定向

    Python学习笔记(二):标准流与重定向 - SamWei - 博客园 Python学习笔记(二):标准流与重定向 Posted on 2012-02-19 22:36 SamWei 阅读(176) ...

  8. python 学习笔记 12 -- 写一个脚本获取城市天气信息

    近期在玩树莓派,前面写过一篇在树莓派上使用1602液晶显示屏,那么可以显示后最重要的就是显示什么的问题了. 最easy想到的就是显示时间啊,CPU利用率啊.IP地址之类的.那么我认为呢,假设可以显示当 ...

  9. Python机器学习笔记:sklearn库的学习

    自2007年发布以来,scikit-learn已经成为Python重要的机器学习库了,scikit-learn简称sklearn,支持包括分类,回归,降维和聚类四大机器学习算法.还包括了特征提取,数据 ...

  10. python输入数字翻译成星期几-Python练习笔记——计算输入日期为改年的第几天、星期几...

    # 输入年月日,如:1995年12月10日,计算是该年的第几天? # 同时计算出当天是星期几? print("请依据提示依次输入您想查询的年 月 日") # 第一段代码块(年月日输 ...

最新文章

  1. IBInspectable / IBDesignable
  2. codeforces 450B. Jzzhu and Sequences 解题报告
  3. 技术负责人所需的四个核心能力,你具备几个?
  4. memcached学习笔记6--浅谈memcached的机制 以及 memcached细节讨论
  5. JS过滤表单数据中的特殊字符
  6. python将json转换为excel_使用python将Excel转换为JSON_python_酷徒编程知识库
  7. python-pymysql模块的使用入门
  8. Android 系统(172)---如何使用addr2line命令解析native backtrace
  9. RocketMq : 消费消息的两种方式 pull 和 push
  10. HDU 4819 Mosaic(二维线段树)
  11. python决策树分类案例_银行产品销售案例与决策树分类算法
  12. 1603错误_iPhone恢复iTunes未知错误怎么办【解决方法】
  13. RC延时电路计算方法
  14. 计算机电源管理器的用途,联想电源管理软件调整电源模式有什么用?联想电源管理软件电源模式调整和用处...
  15. JTT808、JTT1078、TJSATL主动安全踩坑记录
  16. 【OSS】使用Element实现图片上传到OSS
  17. matlab 图像处理 消除锯齿,Matlab图像处理,锯齿阵列图像
  18. MapReduce论文阅读记录
  19. 利用Redis的Geo功能实现查找附近的位置!
  20. 在MTK7628平台编译Silicon的zigbee Host程序

热门文章

  1. SC2Rank 星际2天梯排行榜 SpringMVC + Spring + Mybatis + Mysql + Maven java web项目
  2. 什么技术都只懂一点的蹩脚程序员
  3. SAP 权限与角色设计
  4. solr facet查询及solrj 读取facet数据
  5. 关于“长尾理论”(The Long Tail)
  6. azw3电子书如何用安卓手机打开?
  7. 【毕业设计】JSP+Java+MySql+微信小程序 基于微信小程序的扫码点餐系统
  8. Ubuntu16.04系统美化
  9. plsql的注册激活
  10. kali linux 网络渗透测试学习笔记(三)社会工程学之Java攻击:钓鱼网站制作