美味度配方

news2024/11/27 15:52:29

8 种配料每种配料可以放 1 到 5 克,美味度为配料质量之和,给定一个美味度 n,求解 8 种配料的所有搭配方案及方案数量 。


  (本笔记适合学了 Python 循环,正在熟炼的 coder 翻阅)


【学习的细节是欢悦的历程】

  • Python 官网:https://www.python.org/

  • Free:大咖免费“圣经”教程《 python 完全自学教程》,不仅仅是基础那么简单……
    地址:https://lqpybook.readthedocs.io/


  自学并不是什么神秘的东西,一个人一辈子自学的时间总是比在学校学习的时间长,没有老师的时候总是比有老师的时候多。
            —— 华罗庚


  • My CSDN主页、My HOT博、My Python 学习个人备忘录
  • 好文力荐、 老齐教室
等风来,不如追风去……


8 种配料 1~5 克,美味度为配料质量之和
美 食  配 方
(给定美味度 n,求解配料所有配方及数量 )


本文质量分:

90
本文地址: https://blog.csdn.net/m0_57158496/article/details/131279828

CSDN质量分查询入口:http://www.csdn.net/qc


目 录

  • ◆ 美食配方
    • 1、题目描述
    • 2、题解
      • 2.1 八层for 循环
      • 2.2 Python 优雅的解析式
    • 、完整源码


◆ 美食配方


1、题目描述


  某餐厅厨师制作美食需要用到 8 种配料(盐、芥末、糖等),每种配料可以放 1 到 5 克,美食的美味度为所有配料质量之和。如果给定一个美味度 n,求解具有该美味度的 8 种配料的所有搭配方案及方案数量。


【输入形式】
一个正整数 n (n<=100),表示美味度。


【输出形式】
1.方案总数 = 0,输出 0 ;
2. 1 <= 方案总数 <= 5,按字典序排列输出所有搭配方案,最后一行输出方案总数;
3. 方案总数 > 5 ,按字典序排列输出前 5 种搭配方案,最后一行输出方案总数;


注:每行用空格隔开输出 8 种配料的质量,表示 1 种搭配方案。


回页目录

2、题解

2.1 八层for 循环


  用八层 for 嵌套,可以打印输出所有满足条件的“美味配方”到终端屏幕。

for a1 in range(1, 6):
    for a2 in range(1, 6):
        for a3 in range(1, 6):
            for a4 in range(1, 6):
                for a5 in range(1, 6):
                    for a6 in range(1, 6):
                        for a7 in range(1, 6):
                            for a8 in range(1, 6):
                                count = sum([a1, a2, a3, a4, a5, a6, a7, a8])
                                
                                if count == delicious:
                                    counts += 1 # 统计配方总数。
                                    print(', '.join([f"{k}: {v}" for k,v in zip(['a1', 'a2', 'a3', 'a4', 'a5', 'a6', 'a7', 'a8'], [a1, a2, a3, a4, a5, a6, a7, a8])]))


  题目要求是大于五个配方的美味度,只列印字典序前五条配方。由于采用的 for 循环嵌套遍历,本就从字典序,只输出前五条就好。


if counts <= 5:
print(', '.join([f"{k}: {v}" for k,v in zip(['a1', 'a2', 'a3', 'a4', 'a5', 'a6', 'a7', 'a8'], [a1, a2, a3, a4, a5, a6, a7, a8])]))

  • 代码运行效果截屏图片
    在这里插入图片描述


回页目录

2.2 Python 优雅的解析式


   Python 优雅的解析式,可以把八层 for 写成一行,生成以 zip() 类型为元素的列表,每个 zip() 类型就是一组“美味配方”,遍历配方列表前5就好。( 8 层 for 本就是按字典序穷举遍历,所以直接打印前五就可以)



result = [zip(('a1', 'a2', 'a3', 'a4', 'a5', 'a6', 'a7', 'a8'), (a1, a2, a3, a4, a5, a6, a7, a8)) for a1 in range(1, 6)  for a2 in range(1, 6)  for a3 in range(1, 6)  for a4 in range(1, 6)  for a5 in range(1, 6)  for a6 in range(1, 6)  for a7 in range(1, 6)  for a8 in range(1, 6) if sum((a1, a2, a3, a4, a5, a6, a7, a8)) == delicious]

for i in result[:5]:
    print(f"{', '.join((f'{k}: {v}' for k,v in i))}")

print(f"{'':~^41}\n{' 以上是字典序前五配方 ':^31}")
print(f"\n{'':>13}配方总数:{len(result)}\n{'':~^41}")


  • 代码运行效果截屏图片

    print(result[:5]) ,接打印前组“美味配方”就是——
    在这里插入图片描述

    for i in result[:5]:
      print(f"{’, ‘.join((f’{k}: {v}’ for k,v in i))}")

    插值字符串格式打印,就是——
    在这里插入图片描述


回页目录

、完整源码

(源码较长,点此跳过源码)




回页首

上一篇:  模拟随机验证码(模拟随机验证码)
下一篇: 

我的HOT博:

  本次共计收集 213 篇博文笔记信息,总阅读量 30.40w,平均阅读量 1427。已生成 21 篇阅读量不小于 3000 的博文笔记索引链接。数据采集于 2023-06-18 22:38:02 完成,用时 4 分 22.04 秒。


  1. 让QQ群昵称色变的神奇代码
    ( 55929 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/122566500
    点赞:24   踩 :0  收藏:81  打赏:0  评论:17
    本篇博文笔记于 2022-01-18 19:15:08 首发,最晚于 2022-01-20 07:56:47 修改。
  2. pandas 数据类型之 DataFrame
    ( 8664 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/124525814
    点赞:6   踩 :0  收藏:29  打赏:0  评论:0
    本篇博文笔记于 2022-05-01 13:20:17 首发,最晚于 2022-05-08 08:46:13 修改。
  3. 个人信息提取(字符串)
    ( 6709 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/124244618
    点赞:1   踩 :0  收藏:11  打赏:0  评论:0
    本篇博文笔记于 2022-04-18 11:07:12 首发,最晚于 2022-04-20 13:17:54 修改。
  4. 罗马数字转换器|罗马数字生成器
    ( 6600 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/122592047
    点赞:0   踩 :0  收藏:1  打赏:0  评论:0
    本篇博文笔记于 2022-01-19 23:26:42 首发,最晚于 2022-01-21 18:37:46 修改。
  5. Python字符串居中显示
    ( 6516 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/122163023
    点赞:1   踩 :0  收藏:6  打赏:0  评论:1
    本篇博文笔记于 2021-12-26 23:35:29 发布。
  6. 斐波那契数列的递归实现和for实现
    ( 5367 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/122355295
    点赞:4   踩 :0  收藏:2  打赏:0  评论:8
    本篇博文笔记于 2022-01-06 23:27:40 发布。
  7. Python列表(list)反序(降序)的7种实现方式
    ( 5317 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/128271700
    点赞:4   踩 :0  收藏:18  打赏:0  评论:8
    本篇博文笔记于 2022-12-11 23:54:15 首发,最晚于 2023-03-20 18:13:55 修改。
  8. 练习:字符串统计(坑:f‘string‘报错)
    ( 4948 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/121723096
    点赞:0   踩 :0  收藏:1  打赏:0  评论:0
    本篇博文笔记于 2021-12-04 22:54:29 发布。
  9. 练习:尼姆游戏(聪明版/傻瓜式•人机对战)
    ( 4701 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/121645399
    点赞:14   踩 :0  收藏:42  打赏:0  评论:0
    本篇博文笔记于 2021-11-30 23:43:17 发布。
  10. python清屏
    ( 4623 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/120762101
    点赞:0   踩 :0  收藏:5  打赏:0  评论:0
    本篇博文笔记于 2021-10-14 13:47:21 发布。
  11. 回车符、换行符和回车换行符
    ( 4578 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/123109488
    点赞:1   踩 :0  收藏:2  打赏:0  评论:0
    本篇博文笔记于 2022-02-24 13:10:02 首发,最晚于 2022-02-25 20:07:40 修改。
  12. 密码强度检测器
    ( 4015 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/121739694
    点赞:1   踩 :0  收藏:4  打赏:0  评论:0
    本篇博文笔记于 2021-12-06 09:08:25 首发,最晚于 2022-11-27 09:39:39 修改。
  13. 练习:生成100个随机正整数
    ( 3997 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/122558220
    点赞:1   踩 :0  收藏:6  打赏:0  评论:0
    本篇博文笔记于 2022-01-18 13:31:36 首发,最晚于 2022-01-20 07:58:12 修改。
  14. 罗马数字转换器(用罗马数字构造元素的值取模实现)
    ( 3900 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/122608526
    点赞:0   踩 :0  收藏:0  打赏:0  评论:0
    本篇博文笔记于 2022-01-20 19:38:12 首发,最晚于 2022-01-21 18:32:02 修改。
  15. 练习:班里有人和我同生日难吗?(概率probability、蒙特卡洛随机模拟法)
    ( 3708 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/124424935
    点赞:1   踩 :0  收藏:3  打赏:0  评论:0
    本篇博文笔记于 2022-04-26 12:46:25 首发,最晚于 2022-04-27 21:22:07 修改。
  16. 我的 Python.color() (Python 色彩打印控制)
    ( 3648 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/123194259
    点赞:2   踩 :0  收藏:7  打赏:0  评论:0
    本篇博文笔记于 2022-02-28 22:46:21 首发,最晚于 2022-03-03 10:30:03 修改。
  17. 练习:仿真模拟福彩双色球——中500w巨奖到底有多难?跑跑代码就晓得了。
    ( 3409 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/125415626
    点赞:3   踩 :0  收藏:4  打赏:0  评论:3
    本篇博文笔记于 2022-06-22 19:54:20 首发,最晚于 2022-06-23 22:41:33 修改。
  18. 聊天消息敏感词屏蔽系统(字符串替换 str.replace(str1, *) )
    ( 3221 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/124539589
    点赞:3   踩 :0  收藏:2  打赏:0  评论:3
    本篇博文笔记于 2022-05-02 13:02:39 首发,最晚于 2022-05-21 06:10:42 修改。
  19. random.sample()将在python 3.9x后续版本中被弃用
    ( 3204 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/120657230
    点赞:0   踩 :0  收藏:0  打赏:0  评论:0
    本篇博文笔记于 2021-10-08 18:35:09 发布。
  20. Linux 脚本文件第一行的特殊注释符(井号和感叹号组合)的含义
    ( 3190 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/123087606
    点赞:0   踩 :0  收藏:4  打赏:0  评论:3
    本篇博文笔记于 2022-02-23 13:08:07 首发,最晚于 2022-04-04 23:52:38 修改。
  21. 练习:求列表(整数列表)平衡点
    ( 3087 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/121737612
    点赞:0   踩 :0  收藏:0  打赏:0  评论:0
    本篇博文笔记于 2021-12-05 23:28:10 发布。
推荐条件 阅读量突破三千
(更多热博,请点击蓝色文字跳转翻阅)

回页首


老齐漫画头像

精品文章:

  • 好文力荐:齐伟书稿 《python 完全自学教程》 Free连载(已完稿并集结成书,还有PDF版本百度网盘永久分享,点击跳转免费🆓下载。)
  • OPP三大特性:封装中的property
  • 通过内置对象理解python'
  • 正则表达式
  • python中“*”的作用
  • Python 完全自学手册
  • 海象运算符
  • Python中的 `!=`与`is not`不同
  • 学习编程的正确方法

来源:老齐教室


回页首

◆ Python 入门指南【Python 3.6.3】


好文力荐:

  • 全栈领域优质创作者——[寒佬](还是国内某高校学生)博文“非技术文—关于英语和如何正确的提问”,“英语”和“会提问”是编程学习的两大利器。
  • 【8大编程语言的适用领域】先别着急选语言学编程,先看它们能干嘛
  • 靠谱程序员的好习惯
  • 大佬帅地的优质好文“函数功能、结束条件、函数等价式”三大要素让您认清递归

CSDN实用技巧博文:

  • 8个好用到爆的Python实用技巧
  • python忽略警告
  • Python代码编写规范
  • Python的docstring规范(说明文档的规范写法)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/664969.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chatgpt赋能python:把图像放在中间的SEO优化指南

把图像放在中间的SEO优化指南 当我们在设计网站或博客时&#xff0c;经常会使用图像来增加文章的吸引力和清晰度。但是&#xff0c;图像的位置对于搜索引擎优化&#xff08;SEO&#xff09;很重要&#xff0c;因为搜索引擎无法理解和索引图像的内容&#xff0c;所以我们需要通…

chatgpt赋能python:Python抢商品:自动化实现秒杀购物的利器

Python抢商品&#xff1a;自动化实现秒杀购物的利器 随着互联网和电商的高度融合&#xff0c;电商平台受到越来越多的用户关注和青睐。在线购物已成为人们日常生活中必不可少的一部分&#xff0c;不管是网购小白还是技术大牛&#xff0c;都喜欢在各种平台上刷到想要的商品。但…

chatgpt赋能python:让Python帮助你轻松抢券

让Python帮助你轻松抢券 在这个数字化时代&#xff0c;抢购已成为电商平台上最为火热的活动之一。限时抢购、秒杀活动、优惠券折扣等等&#xff0c;都吸引了大量消费者的关注。然而&#xff0c;随着购物热潮的兴起&#xff0c;商品的库存有限&#xff0c;抢购难度越来越大。在…

高效能研发团队-使用自动化改进效率

在开发过程中利用自动化技术&#xff0c;可以帮助我们&#xff1a; 节约开发人员的时间&#xff0c;让他们做更有价值的事情。减少了开发流程中的人员依赖和相互等待的情况。加快了迭代速度&#xff0c;提前把问题暴露出来。另外一种形式的知识沉淀&#xff0c;减少人员流动带…

【学习日记2023.6.19】 之 RabbitMQ服务异步通信_消息可靠性_死信交换机_惰性队列_MQ集群

文章目录 服务异步通信-高级篇4. 消息可靠性4.1 生产者消息确认4.1.1 修改配置4.1.2 定义Return回调4.1.3 定义ConfirmCallback 4.2 消息持久化4.2.1 交换机持久化4.2.2 队列持久化4.2.3 消息持久化 4.3 消费者消息确认4.3.1 演示none模式4.3.2 演示auto模式 4.4 消费失败重试机…

第六章 calendar模块(日历)

1. calendar模块介绍 calendar 模块&#xff08;日历模块&#xff09;的方法都是与日历相关的&#xff0c;例如生成指定年份的日历、判断指定年份是否为闰年等。默认情况下&#xff0c;这些日历把星期一当作一周的第一天&#xff0c;星期天为一周的最后一天&#xff08;按照欧…

【前端知识】React 基础巩固(十六)——脚手架的介绍和环境搭建

React 基础巩固(十六)——脚手架的介绍和环境搭建 前端脚手架 三大框架的脚手架 Vue: vue/cliAngular: angular/cliReact: create-react-app 作用&#xff1a;帮助我们生成一个通用的目录结构&#xff0c;并且已经将我们所需的工程环境配置好脚手架需要依赖什么&#xff1f; …

Win11 + VS2022 + CMake3. 26.4 编译VTK8.2.0

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、下载VTK源码二、生成解决方案三、编译安装VTK项目四、报错总结 前言 最近由于有项目要用到VTK&#xff0c;所以想重新学一遍VTK。当然要从编译VTK开始。因…

【pytorch】新的windows电脑从头搭建pytorch深度学习环境(完整版+附安装包)

文章目录 新的windows电脑搭建pytorch深度学习环境电脑环境的配置显卡驱动cudacudnn pytorch开发软件的安装minicondavscode pytorch环境的安装conda安装python环境安装pytorch和torchvision 附录1&#xff1a;部分torch、torchvision、torchaudio版本对应关系附录2&#xff1a…

chatgpt赋能python:Python抢票教程:快速抢到心仪的票

Python抢票教程&#xff1a;快速抢到心仪的票 随着互联网的飞速发展&#xff0c;越来越多人选择在网上购买演唱会、球赛、展览等门票&#xff0c;而这些热门票常常被秒杀一空&#xff0c;可怎么办呢&#xff1f;Python帮你解决这个问题&#xff01; 什么是Python抢票 Python…

JUC之CompletableFuture

文章目录 1 Future接口1.1 FutureTask相关接口关系1.2 Future接口的优缺点1.2.1 优点1.2.2 缺点 2 Complatable Future2.1 CompletionStage2.2 使用案例2.2.1 runAsync2.2.2 supplyAsync2.2.3 join和get的区别2.2.4 CF simple project使用案例2.2.5 CF 常用API2.2.5.1 获取结果…

chatgpt赋能python:Python中将局部变量赋值给全局变量的方法

Python中将局部变量赋值给全局变量的方法 Python是一种灵活、高效的编程语言&#xff0c;许多开发人员喜欢使用这种语言来开发应用程序。在Python中&#xff0c;我们可以定义全局变量和局部变量。全局变量是定义在整个程序中的变量&#xff0c;而局部变量是定义在函数中的变量…

io.netty学习(五)ChannelPipeline

目录 前言 ChannelPipeline 接口 创建 ChannelPipeline ChannelPipeline 事件传输机制 ChannelPipeline 中的 ChannelHandler ChannelHandlerContext 接口 总结 前言 我们在前面的文章中也对ChannelPipeline接口做了初步的介绍。 io.netty学习使用汇总 ChannelPipeli…

chatgpt赋能python:Python把图片转换为图片代码

Python把图片转换为图片代码 在现代计算机应用和互联网中&#xff0c;图像已经成为不可或缺的一部分。然而&#xff0c;我们有时需要将图像转换为代码&#xff0c;以便在我们的应用程序中使用它或通过互联网共享它。Python作为一种流行的编程语言&#xff0c;提供了许多很好的…

如何判断商城源码是否靠谱?

伴随着电子商务的快速发展&#xff0c;商城系统成为了企业发展的重要工具。选择适合自己企业的商城系统源码是一个关键问题&#xff0c;因为它关系到企业未来的发展。那么如何判断商城系统源码是否靠谱呢&#xff1f; 一、核心技术 商城系统的核心技术是网站建设开发&#xff…

JWT入门指南

1、Token认证 随着 Restful API、微服务的兴起&#xff0c;基于 Token 的认证现在已经越来越普遍。基于token的用户认证是一种服务端无状态的认证方式&#xff0c;所谓服务端无状态指的token本身包含登录用户所有的相关数据&#xff0c;而客户端在认证后的每次请求都会携带toke…

利用SQL注入漏洞登录后台

所谓SQL注入&#xff0c;就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串&#xff0c;最终达到欺骗服务器执行恶意的SQL命令&#xff0c;比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的&#xff0c;这类表单特别容易受到SQ…

A7+linux4.14内核SPI 总线通讯异常问题分析

I.问题现象、 2023年1月18日&#xff0c;A7核心板 升级内核版本时&#xff0c;发现SPI总线无法跟wk2168通讯&#xff0c;打印信息如下&#xff1a;nts_io_init in gpmi-nand 1806000.gpmi-nand: mode:4 ,failed in set feature. [bus:0~select:0]wk2xxx_probe() GENA 0xFF reg…

【动态规划】简单多状态dp问题(2)买卖股票问题

买卖股票问题 文章目录 【动态规划】简单多状态dp问题&#xff08;2&#xff09;买卖股票问题1. 最佳买卖股票时机含冷冻期&#xff08;买卖股票Ⅰ&#xff09;1.1 题目解析1.2 算法原理1.2.1 状态表示1.2.2 状态机1.2.3 状态转移方程1.2.4 初始化1.2.5 填表顺序1.2.6 返回值 1…

26.利用概率神经网络分类 预测基于PNN的变压器故障诊断(附matlab程序)

1.简述 学习目标&#xff1a; 概率神经网络分类预测 基于PNN的变压器故障诊断 概率神经网络是由Specht博士在1989年首先提出&#xff0c; 是一种与统计信号处理的许多概念有着紧密联系的并行算法。它实质上是一个分类器&#xff0c;根据概率密度函数的无参估计进行贝叶斯决策…