。。。。。。多少年都没碰语言了~提个算法,你们看行不行~
(我那时候竞赛用的是过了时的free pascal(我也就没学其他的~),所以程序我就不编了~有兴趣的话大家可以尝试一下)
首先引一个定理:“一个数n是不是质数那么它一定存在小于sqrt(n)的因数”,换句话说就是“如果n mod k<>0(2<=k<=sqrt(n))”那么n就一定为质数。
那么首先是一个预处理:用筛选法求出1..999999的质数~(时间可能还好~没试过

)
放在state[]中
然后用sqr(state
)和n比较大小,之后就可以用高进度算法计算了(这题目明显是用高精度嘛~)
个人看法~~