Perfect Squares——Leetcode
2015-09-20 17:03
369 查看
Given a positive integer n, find the least number of perfect square numbers (for example,
For example, given n =
题目大意:给一个正整数,找出可以由最少个平方数构成的数量是多少。
解题思路:dynamic programming,递推公式F
=min{F[n-1]+1,F[n-4]+2,F[n-9]+3,...};
1, 4, 9, 16, ...) which sum to n.
For example, given n =
12, return
3because
12 = 4 + 4 + 4; given n =
13, return
2because
13 = 4 + 9.
题目大意:给一个正整数,找出可以由最少个平方数构成的数量是多少。
解题思路:dynamic programming,递推公式F
=min{F[n-1]+1,F[n-4]+2,F[n-9]+3,...};
public class Solution { int[] f; public int numSquares(int n) { f=new int[n+1]; Arrays.fill(f,Integer.MAX_VALUE); f[1]=1; for(int i=2;i<=n;i++){ int r = (int)Math.sqrt(i); if(i==r*r){ f[i]=1; continue; } for(int j=1;j<=r;j++){ f[i]=Math.min(f[i],f[i-j*j]+1); } } return f ; } }
相关文章推荐
- JavaScript中双叹号“!!”作用
- Perfect Squares
- js之节点属性
- HTML5 2D 游戏开发(三): 设置舞台
- JavaScript取出字符串和尾随空格
- 浏览器兼容处理(HTML条件注释、CSSHack和JS识别)
- jQuery.Deferred(func)总结
- XML 数据请求与JSON 数据请 4000 求
- nodeJs 笔记
- Zen Coding: 一种快速编写HTML/CSS代码的方法
- HTML5 中 div section article 的区别
- a web-based music player(GO + html5)
- CSS实现垂直居中的5种方法
- JS之dom操作getAttribute()方法
- JS之dom操作getAttribute()方法
- TouchSlide.1.1.js 参数
- 剑指offer--整数中1出现的次数(从1到n整数中1出现的次数)
- js事件知识整理
- Javascript学习笔记【第四章】
- CSS 神奇的border(三)