首页 > 其他 > 详细

leetcode279

时间:2018-10-05 17:06:35      阅读:159      评论:0      收藏:0      [点我收藏+]

动态规划

public class Solution
    {
        public int NumSquares(int n)
        {
            var list = new List<int>();
            list.Add(0);
            for (int i = 1; i <= n; i++)
            {
                list.Add(i);//每一个数字,初始化为全部由1构成
            }
            for (int i = 2; i <= n; i++)
            {
                for (int j = 1; j * j <= i; j++)
                {
                    var x = list[i];//当前值的构成数量
                    var s = i - j * j;//余数的下标
                    var t = list[s];//余数值的构成数量
                    var y = t + 1;//余值构成数量+1个完美平方数

                    list[i] = Math.Min(x, y);
                }
            }
            return list[n];
        }
    }

 

leetcode279

原文:https://www.cnblogs.com/asenyang/p/9745033.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!