·· / ·– ·· ·-·· ·-·· / ·–· · ·-· ··· ·· ··· - / ··- -· - ·· ·-·· / ·· / ·– ·· -·
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6216
这题考察的是数学思维。
一开始想用打表暴力枚举出所有(满足a^3-(a-1)^3<=2*10^12)的a^3,然后枚举b^3并判断b^3+p是否在枚举出的a^3中,但因为要开816498的long long数组内存吃不消,所以只能作罢。
其实这题是立方差公式: a^3-b^3=(a-b)*(a^2+a*b+b^2) 并且因为p为质数,所以a-b只能是1。此时带入a=b+1,可以得到p=3*b^2+3*b+1,枚举b就能得到答案了。
贴上代码:
1 |
|