【Math】ACM-ICPC南京 J- Sum 线性筛法求 质因数个数 再减去平方因子个数

版权声明:版权所有……啊重点是我简直找不到第二个人写比我还多的吐槽-。- https://blog.csdn.net/StrongerIrene/article/details/82319568

题目链接 题目  (最近真是快自闭了。。。  要找一种置之死地而后生的学习方法- 。-)

原理:

比如f(6)=4 可选的元素有2和3 现在你要把它分成两部分,那我们不妨只考虑第一部分的取法 
就是1 2 3 6,另一部分就是(6/第一部分)  (是除以)
也就是对于每个元素,可以选取或者不取
所以答案就是   2^(选项)

2^是
2的质因子个数次方  当然是经过上面处理的剩下的质因子个数  
经过我们前两步处理后,剩下的质因子个数就是可选择的质因子个数了
所谓可选择的质因子个数,就是在式子n=a*b中,可以在a,也可以在b
那么对于每个可选的质因子个数都有两种选择,所以答案就是2的可选质因子个数次方


Q:  3次的为什么就全是0了
A:  设这个质数为p,既然你已经有了一个p^3(p的3次方),那么你无论怎么分,两边终有一边的次数>=2
p^4  p^5都是0 

Q: P^2
A: p^2可以劈开成两半 然后这个质数就不能选择了,所以要减去
比如4  你只能放成2和2  1*4不行

Q: 举个例子 f(30)
A: 2*3*5 所以是8(没有被筛掉的) 
 

注意: 所谓!质因数分解!。。

36分解成的是2*2*3*3 因子个数是2个! 不是有几种表示36的方法!!!

p^1是可选择的意思是,它可以放在a,也可以放在b,所以有两种答案 对其他所有可选择的质数独立,所以答案是2的可选择的质数次

p^3不断往后累加的时候

假设这个是6^6^6 就是(6^6^6)*1  *2  *3

当到达*6的时候其实就是p^4

到达*36的时候就是p^5

前面置0了,后面就可以继承0的

但是可以由p^3推导

p^3不断往后累加的时候

猜你喜欢

转载自blog.csdn.net/StrongerIrene/article/details/82319568