HDU-6216 A Cubic number and A Cubic Number
来源:互联网 发布:80端口入侵 编辑:程序博客网 时间:2024/06/10 20:33
题目链接:A Cubic number and A Cubic Number
题目大概意思是给你一个素数p,判断这个数是不是两个数a和b的立方差,根据立方差公式得p=(a-b)(a^2+a*b+b^2),素数是只能被一和自身整除的数,这里显然有a-b=1,a^2+a*b+b^2=p,带入消元有3*b^3+3*b+1=p,现在就是判断有没有这样的整数符合条件,为了消除误差带来的影响,用循环来筛选出这个数,循环的起点数是这个方程的正数解向下取整
AC代码:
#include<iostream>#include<cmath>using namespace std;int main(){int num;cin >> num;long long a, b;while (num--){cin >> a;b = ((-3.0 + sqrt(-3.0 + (double)a*12.0)) / 6.0);while ((b*b * 3 + 3 * b + 1) <= a){if (b*b * 3 + 3 * b + 1 == a){cout << "YES" << endl;break;}else b++;}if ((b*b * 3 + 3 * b + 1) > a)cout << "NO" << endl;}}
阅读全文
0 0
- hdu 6216 A Cubic number and A Cubic Number
- HDU 6216 A Cubic number and A Cubic Number
- HDU 6216 A Cubic number and A Cubic Number
- HDU 6216 A Cubic number and A Cubic Number
- HDU 6216 A Cubic number and A Cubic Number
- hdu 6216 A Cubic number and A Cubic Number
- hdu 6216 A Cubic number and A Cubic Number
- hdu 6216-A Cubic number and A Cubic Number
- HDU-6216 A Cubic number and A Cubic Number
- hdu 6216 A Cubic number and A Cubic Number
- HDU 6216 A Cubic number and A Cubic Number
- hdu 6216 A Cubic number and A Cubic Number
- A Cubic number and A Cubic Number
- A Cubic number and A Cubic Number
- **A Cubic number and A Cubic Number**
- A Cubic number and A Cubic Number
- A Cubic number and A Cubic Number
- A Cubic number and A Cubic Number
- linux中Graphics2D 中文乱码的解决办法
- 正则表达式,只能输入数字且最多两位有效数字,数字位数最多五位(限制的位数可自行调整)
- 数组
- MySQL单表查询优化技巧汇总
- LeetCode-49-Group Anagrams list_to_string、string list
- HDU-6216 A Cubic number and A Cubic Number
- BeX5使用疑难总结
- NLP in English
- 数据块损坏恢复
- 数独 生成及求解
- Nmap 进阶
- RDS备份恢复到本地ECS服务器,搭建主从
- 近一个月的面试总结(java)
- Swift 中的泛型