【时事篇-05-03】20240222 金额145-150元填充27笔货币基金的具体数目测算( itertools)

本文主要是介绍【时事篇-05-03】20240222 金额145-150元填充27笔货币基金的具体数目测算( itertools),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

作品展示

背景需求:

通过 itertools计算2525元存17笔145-150元金额的最适合方案

【时事篇-05-02】20240221 2525元存17只货币基金的具体数目测算( itertools)-CSDN博客文章浏览阅读823次,点赞32次,收藏13次。【时事篇-05-02】20240221 2525元存17只货币基金的具体数目( itertools)https://blog.csdn.net/reasonsummer/article/details/136220804

现在我的账户里还有27个货币基金没有填满。

如果我想分别存入145、146、147、148、149、150六种金额,每一种分别需要存入几笔,才能让合计等于27笔?最后计算总金额。

设计思路

1、将27除以6(145-150共6个金额)=4.5笔

如果想让 145-150出现的次数也基本相近,就将27除以6,每个金额的次数范围就在4-5之间

2、用itertools计算每个金额出现的次数,并相加正好等于27

结果只有一种——[4, 4, 4, 5, 5, 5]

也就是145*4+146*4+147*4+148*5+149*5+150*5

推算出合计

=3987元(27只)

'''
150元存钱游戏(需要27笔,在145-150之间推算,145元会是几笔,146元几笔……最后计算一共多少元)
作者:阿夏
时间:2024年2月22日
'''import itertools# 
q=int(input('缺几只?25只\n'))# 金额范围 6只 145、146、147、148、149、150
m=[]
for i in range(145,151):m.append(i)
print(m)
# [145, 146, 147, 148, 149, 150]
n=len(m)
# 6# 27平均分配到5个里
f1=int(q/n)
print(f1)
# 27/5=4.5 四舍五入是4。
# 
# 范围4-5之间
f2=int(f1)+1numbers = range(f1,f2+1)
combinations = itertools.combinations_with_replacement(numbers, n)com=[]
for combination in combinations:if sum(combination) == q:c=list(combination)com.append(list(combination))
print(c)
print(q,'笔,',f1,'元到',f2,'元,共有',len(com),'种排列')
# [4, 4, 4, 5, 5, 5] 145*4+146*4+147*4+148*5+149*5+150*5all=[]
s=[]
for b in range(len(m)):all.append('{}*{}'.format(m[b],c[b]))s.append(m[b]*c[b])
print('每笔金额、笔数:',all)
print('合计金额: ',sum(s))# 合计金额:  3987

终端输入

27

结果

用其他空缺数字测算:

程序能够平均分配总数(笔),并显示145-150元可以存入几次,保证每个金额出现次数与其他金额出现次数比例相近。并默认推算唯一一种排列的合计金额

这篇关于【时事篇-05-03】20240222 金额145-150元填充27笔货币基金的具体数目测算( itertools)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/737227

相关文章

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

MySQL分区表的具体使用

《MySQL分区表的具体使用》MySQL分区表通过规则将数据分至不同物理存储,提升管理与查询效率,本文主要介绍了MySQL分区表的具体使用,具有一定的参考价值,感兴趣的可以了解一下... 目录一、分区的类型1. Range partition(范围分区)2. List partition(列表分区)3. H

Java Multimap实现类与操作的具体示例

《JavaMultimap实现类与操作的具体示例》Multimap出现在Google的Guava库中,它为Java提供了更加灵活的集合操作,:本文主要介绍JavaMultimap实现类与操作的... 目录一、Multimap 概述Multimap 主要特点:二、Multimap 实现类1. ListMult

golang中slice扩容的具体实现

《golang中slice扩容的具体实现》Go语言中的切片扩容机制是Go运行时的一个关键部分,它确保切片在动态增加元素时能够高效地管理内存,本文主要介绍了golang中slice扩容的具体实现,感兴趣... 目录1. 切片扩容的触发append 函数的实现2. runtime.growslice 函数gro

Golang interface{}的具体使用

《Golanginterface{}的具体使用》interface{}是Go中可以表示任意类型的空接口,本文主要介绍了Golanginterface{}的具体使用,具有一定的参考价值,感兴趣的可以了... 目录一、什么是 interface{}?定义形China编程式:二、interface{} 有什么特别的?✅

Qt之QMessageBox的具体使用

《Qt之QMessageBox的具体使用》本文介绍Qt中QMessageBox类的使用,用于弹出提示、警告、错误等模态对话框,具有一定的参考价值,感兴趣的可以了解一下... 目录1.引言2.简单介绍3.常见函数4.按钮类型(QMessage::StandardButton)5.分步骤实现弹窗6.总结1.引言

PyQt5 QDate类的具体使用

《PyQt5QDate类的具体使用》QDate是PyQt5中处理日期的核心类,本文主要介绍了PyQt5QDate类的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录核心功能常用方法及代码示例​1. 创建日期对象​2. 获取日期信息​3. 日期计算与比较​4. 日

SQL Server中的PIVOT与UNPIVOT用法具体示例详解

《SQLServer中的PIVOT与UNPIVOT用法具体示例详解》这篇文章主要给大家介绍了关于SQLServer中的PIVOT与UNPIVOT用法的具体示例,SQLServer中PIVOT和U... 目录引言一、PIVOT:将行转换为列核心作用语法结构实战示例二、UNPIVOT:将列编程转换为行核心作用语

Pandas透视表(Pivot Table)的具体使用

《Pandas透视表(PivotTable)的具体使用》透视表用于在数据分析和处理过程中进行数据重塑和汇总,本文就来介绍一下Pandas透视表(PivotTable)的具体使用,感兴趣的可以了解一下... 目录前言什么是透视表?使用步骤1. 引入必要的库2. 读取数据3. 创建透视表4. 查看透视表总结前言

pandas中位数填充空值的实现示例

《pandas中位数填充空值的实现示例》中位数填充是一种简单而有效的方法,用于填充数据集中缺失的值,本文就来介绍一下pandas中位数填充空值的实现,具有一定的参考价值,感兴趣的可以了解一下... 目录什么是中位数填充?为什么选择中位数填充?示例数据结果分析完整代码总结在数据分析和机器学习过程中,处理缺失数