Closed. This question is off-topic。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
                        
                        5年前关闭。
                                                                                            
                
        
我的任务是在C中实现找到abundant numbers从1到1000万的算法。因此,我不太了解数学。

有几种方法可以做到这一点,但是有效而又快速(对于那笔10亿美元的BIG输入)可能是通过求和-不除,不乘,甚至不使用除法后的余数。求和

但是我真的很困惑。请大家帮助,感谢每一个答案。


  只有我知道10岁以下有2476736大量数字
  百万,即使是普通计算机硬件也无法对其进行检查
  小时,所以我需要更高效的算法,而且我知道它能够运行
  不到一秒钟。

最佳答案

您可以通过计算高达1000万的大量数字的所有倍数来尝试此操作
假设12是您发现的第一个丰富数字,那么24肯定会丰富,因此您可以计算12的所有倍数,直到您希望达到的极限,然后再计算下一个数字。我不知道它的速度或效率。

10-06 01:45