| 这件事和过去做的事相反,其实也有意义。 |
| 逐步排查掉落入右区间之外的乘积的两个因子的组合,就能准确计算出能有几个有效的乘积。 |
| 因子都在小区间[3,OINT[(N-3)/3]]内,也不是小区间内任何两个因数的乘积都能落到右区间内,比如5就不能和OINT[(N-3)/3]相乘。 |
| 小区间[3,OINT[(N-3)/3]]内的奇数个是可知的,它等于[OINT[(N-3)/3]-3]/2+1。 |
| 把奇因数的个数记作g=[OINT[(N-3)/3]-3]/2+1。 |
| 比如N=100,区间[3,N-3]内的小区间[3,31],有(31-3)/2+1=15个奇数。这里31=OINT[(N-3)/3]。 |
| g=15中,有素数也可以有合数。如果这15个数互乘,最多可有g(g-1)/2=105个乘积。这105个乘积有落入左区间的、右区间的、右区间外的,还要进一步排除。 |
|
除了互乘的乘积,还有自乘的乘积,g个奇数可有g个自乘的乘积,它们要加到105的上面,就是
g+g(g-1)/2 =g(g+1)/2 =120。 |
| 为什么还要加进去自乘?因为互乘使用的是取2的组合公式,没有把两个相同的算进去。 |
| 这120个乘积有落到左区间的,有落到右区间之外的,还要继续排除。 |
| 和前面的推导过程类似,总可以把落到右区间之外的所有合数的个数找出来,得到落入右区间的合数的准确个数。 |