dp练习2

如何分析这个题目呢,要想着当前的最优解只和前面的最优解有关

cpp 复制代码
class Solution {
public:
    int numSquares(int n) {
        vector<int> f(n + 1);
        for (int i = 1; i <= n; i++) {
            int minn = INT_MAX;
            for (int j = 1; j * j <= i; j++) {
                minn = min(minn, f[i - j * j]);
            }
            f[i] = minn + 1;
        }
        return f[n];
    }
};
cpp 复制代码
class Solution {
public:
    int uniquePaths(int m, int n) {
        int dp[105][105];
        for (int i = 0; i <= m; i++) {
            dp[0][1] = 1;
            for (int i = 1; i <= m; i++) {
                for (int j = 1; j <= n; j++) {
                    dp[i][j] = dp[i - 1][j] + dp[i][j - 1];
                }
            }
        }
        return dp[m][n];
    }
};
相关推荐
Fanxt_Ja11 分钟前
【LeetCode】算法详解#15 ---环形链表II
数据结构·算法·leetcode·链表
侃侃_天下12 分钟前
最终的信号类
开发语言·c++·算法
茉莉玫瑰花茶23 分钟前
算法 --- 字符串
算法
博笙困了34 分钟前
AcWing学习——差分
c++·算法
NAGNIP37 分钟前
认识 Unsloth 框架:大模型高效微调的利器
算法
NAGNIP37 分钟前
大模型微调框架之LLaMA Factory
算法
echoarts38 分钟前
Rayon Rust中的数据并行库入门教程
开发语言·其他·算法·rust
Python技术极客44 分钟前
一款超好用的 Python 交互式可视化工具,强烈推荐~
算法
徐小夕1 小时前
花了一天时间,开源了一套精美且支持复杂操作的表格编辑器tablejs
前端·算法·github
小刘鸭地下城1 小时前
深入浅出链表:从基础概念到核心操作全面解析
算法