当前位置: 首页 > wzjs >正文

鞍山网站制作国内做seo最好公司

鞍山网站制作,国内做seo最好公司,专门 做鞋子团购的网站有哪些,赣州君拓网络科技有限公司1.题目描述 2.思路 (1)因为给的任何一个数,都可以用1去拼凑(1也是完全平方数),所以题目要求要用最少的完全平方数 (2)先遍历物品再遍历背包,求的是组合数。 先遍历背包再…

1.题目描述

在这里插入图片描述

2.思路

(1)因为给的任何一个数,都可以用1去拼凑(1也是完全平方数),所以题目要求要用最少的完全平方数
(2)先遍历物品再遍历背包,求的是组合数。
先遍历背包再遍历物品,求的是排列数。
(3)但是这道题中 ,物品之间是没有顺序的。所以for循环可以颠倒。最外层循环遍历 1 到 n,而内层循环遍历所有小于等于 j 的完全平方数(大约是 sqrt(j) 次)。因此,时间复杂度大约是 O(n * sqrt(n))。
在这里插入图片描述
构建 dp 数组时,dp[0] = 0 的意思是:为了表示数字 0,我们不需要任何的平方数,这个是唯一的正确答案。也就是说,0 本身是一个完全平方数。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

3.代码实现

public class H279 {public int numSquares(int n) {//最大值常量:max 是一个常量,用来初始化 dp 数组中的每个元素。Integer.MAX_VALUE 是整型能表示的最大值,表示一个不可能的值,用来进行最小化更新。int max=Integer.MAX_VALUE;int[] dp=new int[n+1];//初始化 dp 数组:初始化 dp 数组的所有元素为 max,表示默认情况下每个数的最小组合数是最大值。// 这样做是为了确保在后续更新时,dp[j] 会被实际计算的最小值所覆盖。for(int j=0;j<=n;j++){dp[j]=max;}// 当和为0时,组合的个数为0dp[0]=0;// 遍历背包for(int j=1;j<=n;j++) {// 遍历物品//i*i<j,然后平方数i从1开始for(int i=1;i*i<=j;i++){//+ 1:因为我们使用了一个完全平方数 i * i 来表示 j - i * i,所以在 dp[j - i * i] 的基础上,我们加上了这个平方数,表示我们需要再使用一个平方数。dp[j]=Math.min(dp[j],dp[j-i*i]+1);}}return dp[n];}public static void main(String[] args){H279 test=new H279();int n=12;int res=test.numSquares(n);System.out.print(res);}
}
http://www.dtcms.com/wzjs/489744.html

相关文章:

  • 东莞网站设计定制开发免费推广引流软件
  • 河南便宜网站建设seo研究中心vip教程
  • 做设计的有什么网站西安百度网站排名优化
  • 东莞网站建设aj工作室门户网站推广方案
  • 邢台做移动网站的公司免费域名邮箱
  • 1空间做2个网站项目推广
  • 什么网站教你做美食湛江seo
  • 使用net域名的大网站游戏推广平台哪个好
  • 泰安市房产信息网官网网站排名优化快速
  • 网站用axure做的rp格式短链接在线生成
  • 网站建设公司投诉电话百度搜索热度
  • 中国网站排名前100企业网络营销案例
  • 群晖服务器可做网站服务器么怎么引流怎么推广自己的产品
  • 哪些在线网站可以做系统进化树免费引流app下载
  • 网上花钱做ppt的网站买友情链接有用吗
  • 全国房产信息查询系统seo推广专员工作内容
  • 自己制作一个网站的软件seo计费怎么刷关键词的
  • 北京轨道交通建设公司网站保定seo排名外包
  • 做网站的是如何赚钱的磁力狗bt
  • 网站如何做vip等级百度竞价开户费用
  • 昆山企业网站建设公司百度惠生活怎么做推广
  • 国外做问卷赚购物券等的网站百度网站优化排名
  • git做网站根目录夫唯seo怎么样
  • 九龙坡网站建设哪家好营销软件网
  • 营销网站建设专业团队在线服务专业做网站公司
  • 网站建设找哪家好百度正版下载恢复百度
  • 网站制作上哪学校新乡百度网站优化排名
  • 做网站的基本功能成人教育培训机构
  • 做网站开发的想接私活360站长工具
  • 微信上浏览自己做的网站吗站长之家统计