一百万(***)
经过yj提醒,我的最终答案如下:令p=1000000,设所求答案为t。以下字母皆表示自然数。
p=a*b*c a<=b<=c
设a=b=c的表示方法有x种,设a=b或b=c的表示方法有y种,设a<b<c的表示方法有z种。
则t=x+3y+6z
(1)a=b=c=100 明显的,x=1
(2)a=b或b=c p=1000*1000,1000的因数个数(除开100这1个)即等于y。
1000=(2^3)*(5^3) y=(3+1)*(3+1)-1=15
(3)a<b<c a<100且b<(p/a)的平方根 a*b仍为p的因数。
若a=1 则1<b<1000 p=(2^6)*(5^6) p的因数个数共有(6+1)*(6+1)=49
其中大于1且小于1000的有23个。
若a=2 2<b<707 b不得是64的倍数,共有19个。
若a=4 4<b<500 b不得是32,64的倍数,共有14个。
若a=5 5<b<447 共有17个。
若a=8 8<b<353 b不得是16,32,64的倍数,共有9个。
若a=10 10<b<316 b不得是64的倍数,共有12个。
若a=16 16<b<250 b不得是8,16,32,64的倍数,共有5个。
若a=20 20<b<223 b不得是32,64的倍数,共有7个。
若a=25 25<b<200 共有8个。
若a=32 32<b<176 b不得是4,8,16,32,64的倍数,共有2个。
若a=40 40<b<158 b不得是16,32,64的倍数,共有3个。
若a=50 50<b<141 b不得是64的倍数,共有3个。
若a=64 64<b<125 b不得是2,4,8,16,32,64的倍数,共有0个。
若a=80 80<b<111 b不得是8,16,32,64的倍数,共有1个。
z=23+19+14+17+9+12+5+7+8+2+3+3+0+1=123
t=1*1+3*15+6*123=784
不过比起yj的方法,过于繁琐且容易发生错误,不具普遍性。