hdu4279 Number

来源:互联网 发布:上帝和程序员的段子 编辑:程序博客网 时间:2024/06/14 18:52

设某数的欧拉函数为A(x),因子数为B(x)。

则题目定义的f(x)=x-A(x)-B(x)+1,因为1多算了一次,所以要加上1。

根据欧拉函数的积性函数公式,只有A(2)为奇数。

而对于任意一个不为某数平方的数,其因数必然成对出现,所以B(x^2)为奇数。

所以,如果一个奇数是某数的平方,其f必然为奇数,如果一个偶数为某数的平方,其f必然为偶数。

只要求区间内的不是某数平方的偶数及是某数平方的奇数的数量就ok了,特判一下1和2。

这题精度是噩梦。。。感谢discuss里的神犇提示用long double。。。


0 0
原创粉丝点击