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.
分析:建立一个n+1长度的数组dp,dp[i]表示i这个数构成平方和需要数字的最小个数。
当j*j<i的时候,temp中保存j从1开始每加1得到的dp[i-j*j] + 1的最小值
当j*j=i的时候,dp[i]的值就直接为1
从2一直到n可以计算出dp[i]的所有值。。
最后return dp[n]的值。

class Solution {
public:int numSquares(int n) {vector<int> dp(n+1);dp[1] = 1;for(int i = 2; i <= n; i++) {int temp = 99999999;for(int j = 1; j * j <= i; j++) {if(j * j == i) {temp = 1;break;}temp = min(temp, dp[i-j*j] + 1);}dp[i] = temp;}return dp[n];}
};

LeetCode 279. Perfect Squares相关推荐

  1. leetcode -- 279. Perfect Squares

    Given a positive integer n, find the least number of perfect square numbers (for example, 1, 4, 9, 1 ...

  2. leetcode 279. Perfect Squares | 279. 完全平方数(动态规划,Java)

    题目 https://leetcode.com/problems/perfect-squares/ 题解:动态规划 参考:[宫水三叶]详解完全背包一维空间优化推导(附背包问题攻略) 首先初始化长度为 ...

  3. Leetcode 279. Perfect Square

    Given a positive integer n, find the least number of perfect square numbers (for example, 1, 4, 9, 1 ...

  4. 279 Perfect Squares 完美平方数

    给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...) 使得他们的和等于 n.你需要让平方数的个数最少. 比如 n = 12,返回 3 ,因为 12 = 4 + 4 + 4 : ...

  5. 279. Perfect Squares

    Given a positive integer n, find the least number of perfect square numbers (for example, 1, 4, 9, 1 ...

  6. Xiaohe-LeetCode 279 Perfect Squares

    (1)Best way.94% This one uses Lagrange's four-square theorem. According to it, every integer is a su ...

  7. 【Breadth-first Search 】279. Perfect Squares

    输入:一个非负整数n. 输出:这个非负整数可以写成几个完全平方数.返回这个数量. 规则:完全平方数可以表示为某个整数的平方.例如:1,4,9- 分析:13=4+9 也就是说13可以写成2个完全平方数的 ...

  8. [LeetCode]Perfect Squares

    题目链接:Perfect Squares 题目内容: Given a positive integer n, find the least number of perfect square numbe ...

  9. 4kyu Sums of Perfect Squares

    4kyu Sums of Perfect Squares 题目背景: The task is simply stated. Given an integer n (3 < n < 109) ...

最新文章

  1. pyqt 子控件更新父控件ui
  2. 上周回顾:赛门铁克失足 微软开源对骂
  3. percona-toolkit 之 【pt-slave-delay】说明
  4. 从git仓库获取源码_微软开源Scalar,提升操作巨型Git仓库的速度
  5. 如何制定自己的博客园皮肤
  6. 3049 舞蹈家怀特先生
  7. PopClip翻译插件开发记录-microsoft_translate.popclipext
  8. Python 爬虫--网站下载器
  9. VS中如何添加报表控件
  10. 5.6 深度卷积神经网络(AlexNet)
  11. 教你如何用CAD画向日葵
  12. Wiki开源软件介绍
  13. php不使用第三变量互换,总结PHP不用第三个变量交换两个变量的值的几种方法
  14. 5年运维经验分享:一个小白走向高级运维工程师之路
  15. 466. 回文日期 Java题解 (模拟)
  16. msvcr120.dll丢失如何修复
  17. Nand Flash 通过调整阈值的Retry方法简单描述
  18. java泛型 方法返回值带有泛型 <T>
  19. Python第三章总结
  20. Android Studio实现简单的健身系统,一起锻炼身体吧

热门文章

  1. 设计模式学习之--Singleton(单例)模式
  2. 听听【八年阿里架构师】怎样讲述Dubbo和Spring Cloud微服务架构
  3. 学霸机器人“拼”高考 将成国内人工智能里程碑
  4. Python操作Redis和Memcached
  5. JAVA Metrics 度量工具使用介绍
  6. 模式实例之——单件模式实例
  7. flex读取bolg的代码
  8. 在asp.net如何取得ActiveDirectory域中用户的信息,比如工号,邮件地址等等
  9. HackerOne 发布《2021年黑客报告》:黑客的动力、发展和未来
  10. 因被曝严重漏洞,Avast紧急禁用其 JavaScript 引擎