当前位置:网站首页>货物摆放问题
货物摆放问题
2022-07-07 10:41:00 【算法与编程之美】
1.问题
小蓝有一个超大的仓库,可以摆放很多货物。
现在,小蓝有n箱货物要摆在仓库,每箱货物都是规则的正方体。小蓝规定了长、宽、高三个互相垂直的方向,每箱货物的边都必须严格平行于长、宽、高。
小兰希望所有的货物最终摆成一个大的立方体。即在长、宽、高的方向上分别堆积L、W、H的货物,满足n=L*W*H。
例如,当n=4时,有以下6种方案:1*1*4、1*2*2、1*4*1、2*1*2、2*2*1、4*1*1.
请问,当n=2021041820210418时,总共有多少种方法?
2.算法描述
首先写出n的值,然后创建一个列表ans,变量i从1遍历到n开平方取整后的数,如果n对i求余为0,就将i和n对i整除的向下取整添加到ans列表,随后以元组形式记录符合条件的每种方案,利用set()函数去重,分别利用三次循环在ans里面取三个数,如果该三个数相乘等于n,则将这三个加到set元素集中,最后输出该元素集的长度即为该题目的答案。
3.实验结果与讨论
通过实验、实践等证明提出的方法是有效的,是能够解决开头提出的问题。
代码清单 1
n = 2021041820210418 ans = [] for i in range(1,int(n**0.5)+1): if n % i == 0: ans.append(i) ans.append(n//i) case = set() for a in ans: for b in ans: for c in ans: if a * b * c == n: case.add((a,b,c)) print(len(case)) |
4 结语
本文涉及到了内置set函数、for循环、if条件语句的判断以及元组,本文中的“**”是次方的意思,“//”是一个算数运算符,表示整数除法,可以返回商的整数部分(向下取整),进一步巩固了这些知识点,通过实验、实践等证明提出的方法是有效的,是能够解决开始提出的问题。
边栏推荐
猜你喜欢
随机推荐
[learn microservice from 0] [01] what is microservice
2022 polymerization process test question simulation test question bank and online simulation test
Leetcode skimming: binary tree 25 (the nearest common ancestor of binary search tree)
Utiliser la pile pour convertir le binaire en décimal
【统计学习方法】学习笔记——支持向量机(下)
[crawler] avoid script detection when using selenium
Dialogue with Wang Wenyu, co-founder of ppio: integrate edge computing resources and explore more audio and video service scenarios
[statistical learning method] learning notes - logistic regression and maximum entropy model
layer弹出层的关闭问题
Master公式。(用于计算递归的时间复杂度。)
Leetcode brush questions: binary tree 19 (merge binary tree)
智云健康上市:市值150亿港元 SIG经纬与京新基金是股东
@Resource和@Autowired的区别?
MySQL importing SQL files and common commands
[pytorch practice] write poetry with RNN
How to apply @transactional transaction annotation to perfection?
Leetcode question brushing: binary tree 26 (insertion operation in binary search tree)
ACL 2022 | small sample ner of sequence annotation: dual tower Bert model integrating tag semantics
Static routing assignment of network reachable and telent connections
【统计学习方法】学习笔记——提升方法