我是一个初学者,在做第三道题的时候,我遇到了这个错误,这道题是关于寻找600851475143的最大素因数。
Python int太大,无法转换为C long
plist = [2]
def primes(min, max):
if 2 >= min:
yield 2
for i in xrange(3, max, 2):
for p in plist:
if i % p == 0 or p * p > i:
break
if i % p:
我正在做欧拉项目的第12题,我必须找到第一个有501个因子的三角形数。所以我用Haskell做了个实验:
divS n = [ x | x <- [1..(n)], n `rem` x == 0 ]
tri n = (n* (n+1)) `div` 2
divL n = length (divS (tri n))
answer = [ x | x <- [100..] , 501 == (divL x)]
第一个函数是求一个数的除数。
第二个函数计算第n个三角形数
第三个函数查找作为三角形数的除数的列表的长度
第四个函数应该返回有501个因子的三角形数的值。
但是到目前为止,这个
我正在解决这个问题:
我以某种方式找到了解决方案,但我仍然不能从数学上证明它。
什么是问题陈述:
There are 'n' toys (1<=n<=10^5) on a shelf.A child is on the floor.He demands toys in
a sequence to play with , specified by 'p' (1<=p<=5*10^5).His mother gives him a toy
from the shelf if the child demanded a toy which is
我有两个列表,listA和listB,可能有不同的长度。为了获得最好的匹配,我希望将listA的对象一对一地与来自listB的对象进行匹配。
我有一个算法,它可以给出任意一对对象的匹配分数。我需要的是一个有效的(并相当容易阅读)算法,以获得最高的得分比赛在一起1-1。在listA中,每个对象只有一个完全匹配,但是可能有相同的对象具有相同的分数,而在这种情况下,匹配的对象并不重要。此外,由于匹配分数不够高,某些对象是否留在其中一个或两个列表中并不重要。
我想出的算法可能有一些我没有发现的缺陷,而且可能有一种我一直找不到的标准方法,所以我正在寻找建议/修正。
以下是我的尝试:
for (a in