LeetCode 279. Perfect Squares 题解
来源:互联网 发布:遗传算法的优缺点 编辑:程序博客网 时间:2024/06/14 08:14
279. Perfect Squares
Given a positive integer n, find the least number of perfect square numbers (for example, 1, 4, 9, 16, ...
) which sum to n.
For example, given n = 12
, return 3
because 12 = 4 + 4 + 4
; given n = 13
, return 2
because 13 = 4 + 9
.
解题思路:
本题使用动态规划解法。由于
ans[i]=ans[i-j*j]+1//可遍历所有j(j*j<=i),从中选出ans[i-j*j]的解,由此可推出ans[i]的最优解。详见代码
代码展示:
class Solution {public: int numSquares(int n) { int ans[n+3]={0}; ans[1]=1; for(int i=2;i<=n;i++) { int j= 1; int min_ans=INT_MAX; while(j*j<=i) { if(j*j==i) { //如果i为完全平方数,则ans[i]=1; min_ans=1; break; } //ans[i]=ans[i-j*j]+1,从中选出最小的解 min_ans=min(min_ans,ans[i-j*j]+1); j++; } ans[i]=min_ans; } return ans[n]; }};
0 0
- LeetCode 279. Perfect Squares 题解
- LeetCode Algorithms 279. Perfect Squares 题解
- LeetCode 题解(209) : Perfect Squares
- LeetCode 279 Perfect Squares 题解
- [leetcode] 279. Perfect Squares
- 279. Perfect Squares LeetCode
- leetcode 279. Perfect Squares
- leetcode 279. Perfect Squares
- [LeetCode]279. Perfect Squares
- LeetCode-279.Perfect Squares
- LeetCode *** 279. Perfect Squares
- leetcode.279. Perfect Squares
- LeetCode 279. Perfect Squares
- [leetcode] 279. Perfect Squares
- Leetcode-279. Perfect Squares
- LeetCode 279. Perfect Squares
- Leetcode 279. Perfect Squares
- [LeetCode]279. Perfect Squares
- 解析UML关系:继承、实现、依赖、关联、聚合、组合
- 彻底卸载流氓软件CleanMyMac
- Android开发-优雅的实现动态图片排版(类似微信图片展示效果)
- React之JSX语法
- VS2013中使用JNI调用java的jar包并回调到C++
- LeetCode 279. Perfect Squares 题解
- 网易2017实习生笔试5
- POJ 3276 Face The Right Way(开关,反转)详解(尺取+枚举两种做法)
- Python极低阶学习中的一点经验
- PostgreSQL学习日志
- Runtime大型讲解
- CSDN-markdown编辑器语法——字体、字号与颜色
- Mybatis整合Spring
- 网上视频,手机卫士看完的总结。。