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

太原网站运营优化注册一个小程序多少钱

太原网站运营优化,注册一个小程序多少钱,网站空间商是什么意思,网络优化方案案例279. 完全平方数 给你一个整数 n ,返回 和为 n 的完全平方数的最少数量 。 完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,1、4、9 和 16 都是完全平方数,而…

279. 完全平方数

给你一个整数 n ,返回 和为 n 的完全平方数的最少数量 。

完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,149 和 16 都是完全平方数,而 3 和 11 不是。

示例 1:

输入:n = 12
输出:3 
解释:12 = 4 + 4 + 4

示例 2:

输入:n = 13
输出:2
解释:13 = 4 + 9

提示:

  • 1 <= n <= 10^4

思路分析

本题要求将整数 n 分解为若干个完全平方数的和,并返回所需完全平方数的最少数量。这是一个经典的动态规划问题,可以类比为完全背包问题。

  • 物品:完全平方数(如1,4,9,16...),每个物品可以无限次使用
  • 背包容量:目标整数n。
  • 目标:恰好装满背包所需的最少物品数量。

动态规划步骤

  1. 状态定义:定义 dp[i] 表示和为 i 时所需的最少完全平方数数量。
  2. 初始化:
    1. dp[0] = 0(和为0时不需要任何平方数)。
    2. 其他位置初始化为一个较大的值(如 n + 1),因为最多由 n 个1组成。(因为要求最小值,所以初始化为一个大于可能最大值的数,比如n+1,因为最多就是n个1相加)。
  3. 状态转移:
    1. 对于每个 i(从1到n),遍历所有可能的平方数 j * j(其中 j * j <= i)。
    2. 状态转移方程:dp[i] = min(dp[i], dp[i - j * j] + 1)。
  4. 最终结果:dp[n]即为答案。

优化

  • 内层循环只需遍历 j 从 1 到 sqrt(i) ,避免无效计算。
  • 时间复杂度:O(n√n),空间复杂度:O(n)。

完整代码

class Solution {public int numSquares(int n) {// 创建dp数组,dp[i]表示和为i所需的最少完全平方数的个数int[] dp = new int[n + 1];// 初始化dp数组,初始值设为n+1(一个大于最大可能值的数)for(int i = 0; i <= n; i++){dp[i] = n + 1;      // 初始化为最大值}dp[0] = 0;// 动态规划填表for(int i = 1; i <= n; i++){// 遍历所有平方数 j*j(j从1开始,直到 j*j<=i)for(int j = 1; j * j <= i; j++){dp[i] = Math.min(dp[i], dp[i - j * j] + 1);}}// 返回结果return dp[n];}
}

代码解析

  1. 初始化

    • dp[0] = 0 表示和为 0 时不需要任何平方数。

    • 其他 dp[i] 初始化为 n + 1(因为最多需要 n 个 1,所以 n + 1 是一个安全的上界)。

  2. 动态规划填表

    • 外层循环遍历 i 从 1 到 n,计算每个 i 所需的最少平方数。

    • 内层循环遍历所有可能的平方数 j * jj 从 1 开始,直到 j * j > i 停止)。

    • 对于每个 j,尝试使用平方数 j * j,更新 dp[i] 为 dp[i - j * j] + 1 的最小值。

  3. 返回结果

    • 最终 dp[n] 存储了和为 n 所需的最少完全平方数数量。

示例验证

  • 示例 1(n = 12):

    • 计算过程:dp[12] = min(dp[11]+1, dp[8]+1, dp[3]+1) → 最终得到 3(4+4+4)。

  • 示例 2(n = 13):

    • 计算过程:dp[13] = min(dp[12]+1, dp[9]+1, dp[4]+1) → 最终得到 2(4+9)。


文章转载自:

http://35NOpJJh.sLqgL.cn
http://o8HeKY8m.sLqgL.cn
http://2eCaFohL.sLqgL.cn
http://HXzXqgEf.sLqgL.cn
http://JoCFoxCA.sLqgL.cn
http://QkX4d65W.sLqgL.cn
http://B88bvDlU.sLqgL.cn
http://EUArPUjM.sLqgL.cn
http://B42X2ERN.sLqgL.cn
http://YVZ5QMNr.sLqgL.cn
http://FxsORvOA.sLqgL.cn
http://cXr8Ix3z.sLqgL.cn
http://DwiLc98n.sLqgL.cn
http://iLmBxBnR.sLqgL.cn
http://9OI8WBFd.sLqgL.cn
http://PfhKjxqC.sLqgL.cn
http://tCdQ27Hh.sLqgL.cn
http://i21RjfRM.sLqgL.cn
http://N0A26EwR.sLqgL.cn
http://4xAiAiaO.sLqgL.cn
http://GFfT3ehd.sLqgL.cn
http://NkK6fdfp.sLqgL.cn
http://MfUFaiWa.sLqgL.cn
http://PFki10Dm.sLqgL.cn
http://ZiW5g5Lo.sLqgL.cn
http://8OZRYldW.sLqgL.cn
http://aWBFe2WU.sLqgL.cn
http://0SIHbzsy.sLqgL.cn
http://qSipC4GF.sLqgL.cn
http://GAtXG66l.sLqgL.cn
http://www.dtcms.com/wzjs/653831.html

相关文章:

  • 注册一个做网站的公司好wordpress 评论api
  • 外贸网站产品分析g3云推广是哪家公司的
  • 新手自己建网站购物网站seo搜索引擎优化方案
  • 滇中引水建设管理局网站网站建设建议书
  • 学做网站用什么软件廊坊seo外包公司费用
  • 网站改版技术要求公众号里的网站怎么做的
  • 付网站建设服务费记账哪种语言网站建设
  • wordpress手机端模板下载失败怎样优化网站排名
  • 学校的网站是怎么建设的贸易公司做网站
  • 广州门户网站制作公司用自己网站做淘宝客
  • 优质的聊城做网站wordpress萨隆
  • 河北网站建设多少钱网站伪静态如何配置文件
  • 网络公司网站开发案例洮南市城乡和住房建设局网站
  • 做采购应该关注的网站沭阳网站设计
  • 成都网站游戏设计手机网站标准
  • 城市建设厅官方网站环球资源网发展现状
  • 做浏览单的网站10_10_微信里网站怎么做的
  • 网站建设辶金手指排名十三同步wordpress到微信
  • 网站平台建设呈现全新亮点七台河新闻联播2022视频
  • 长白山网站学做管理手机怎么创建网页
  • 企业网站网上推广的途径html中文美食网站
  • 站群管理软件站长素材音效网
  • 斗蟋蟀网站建设在线教育平台
  • 建网站买空间flash网站制作公司
  • 涉密项目单位网站建设流程成都营销型网站建设推广
  • wordpress 企业站园区网站建设需求调研报告
  • 网站 商城 app 建设厦门某某公司网站
  • 四川大良网站建设大型电商网站开发实践
  • 营口市网站建设新闻门户网站制作
  • 钱网站制作吧网站做软件的软件下载