摘要:
题意:给出n,求1/n=1/x+1/y(n,x,y=1,2,3...)的解的个数分析:n = (x*y)/(x+y) (x+y)*n = x*y设x = n+a; y = n+b带入可以得到n*n = a*b题目就转化成了求所有整数对使得a*b = n*n。即求n*n的约数个数,由于约数都是成对出现的,两数乘积为n^2,为奇数是因为n与n成对出现,而只计算了1次。为避免重复,设约数个数为p,(p + 1)/2即为所求。然而n*n过大不能直接求约数。我们用求质因子的方法求约数个数,我们只需求n的素因子,每个个数乘2即为n*n的每个素因子个数。View Code #include <iost 阅读全文
posted @ 2011-10-08 12:46
undefined2024
阅读(220)
评论(0)
推荐(0)