gpt4 book ai didi

java - 查找除数

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:18:18 25 4
gpt4 key购买 nike

我有 1 个编程问题要求找出 (1 和 x) 之间可整除的数字的个数乘以 2 和 2 + 3 的因数和 3 + 5 的因数和 5 的因数。

我解决了它,Algo 在下面-

Total count of nos between 1 and x= sum of (
no of factor of x by '2 and factor of 2'=x/2
no of factor of x by '3 and factor of 3'=x/3
no of factor of x by '5 and factor of 5'=x/5) -common number

现在的问题是如何获取包含在上述计算中的那些公共(public)数字。比如说我必须找到 1 到 30 之间的计数可以被以上 3 和它们的因数整除

For 2 numbers are ->2,4,6,....30 
For 3 numbers are ->3,6,9...30
For 5 numbers are ->5,10,15...30

看这里我在每种情况下都计算了 30,所以我必须删除这个计数如何为大的 x 值做到这一点请帮忙

最佳答案

让我们把从 1 到 x 的所有数字视为一个集合。这个集合可以分成子集:

enter image description here

可被 2、3、5 整除且都不能整除。这些集合相交。你的方法很好,但需要稍微改变一下。您还应该计算有多少数字同时被 2 和 3 计数,2 和 5 等等。当您确定可以用数字完美地填充此图时,您就可以开始编码了。

例如,您可以立即用 x/30 的地板填充三个集合的交集。往这边走(记住,每次都是地板!):

enter image description here

关于java - 查找除数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40440049/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com