一个数n的最少可以由多少个数的平方和组成
2015-09-10 08:20
483 查看
bool is_sqrt(int n){ for(int i=1;i<=sqrt(double(n));i++){ if(i*i == n) return true; } return false; } int pow_number(int mp){ int* a = new int[mp+1]; a[0] = 1; a[1] = 1; if(mp==1) return 1; if(is_sqrt(mp))return 1; //int min = 0x8FFFFFFF; for(int i=2;i<=mp;++i) { if(is_sqrt(i)){ a[i]=1; continue; } a[i] = a[1]+a[i-1]; for(int j=i-1;j>=i/2;--j){ a[i] = a[i]<(a[j]+a[i-j])?a[i]:(a[j]+a[i-j]); } } int temp = a[mp]; delete[] a; return temp; }
利用动态规划。
相关文章推荐
- springmvc图片的本地上传和存放数据库
- 作业一:软件工程的实践项目的自我目标
- 第十一篇 SQL Server安全审核
- 稳定高效的MySQL与MSSQL读写分离/连接复用/Sharding-把HTTP的技术推进到数据层
- poj 1722 SUBTRACT(经典dp)
- iOS开发 - CAGradientLayer 实现渐变色
- SQLite使用(一)&&选择表类型
- ajax2.IndexController
- 二叉树的下一个结点
- 联系人Contacts
- 基于随机森林的煤与瓦斯突出预测方法研究
- 网址
- 看板任务管理
- 欧锦赛球星谱:帕克领豪阵 诺天王对决加索尔
- ajax2.guestbook.js
- LA 3644 X-Plosives 并查集
- AsyncTask源码解析
- 【抽象代数】 08 - 域的扩张
- Receiver
- ajax2.ajax