LintCode 513. 完美平方 JavaScript算法

描述

给一个正整数 n, 请问最少多少个完全平方数(比如1, 4, 9…)的和等于n。

样例

- 样例 1:

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

- 样例 2:

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

解析

numSquares = function (n) {
    
    
    f = [];
    for (i = 0; i <= n; i++) {
    
    
        f[i] = i;
        for (j = 1; j * j <= i; j++) {
    
    
            if (f[i] > f[i - j * j ] + 1) {
    
    
                f[i] = f[i - j * j] + 1;
            }
        }
    }
    return f[n];
}

运行结果

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/SmallTeddy/article/details/108614713