29.路径类dp

一.矩阵的最小路径和

题目链接:https://www.nowcoder.com/practice/38ae72379d42471db1c537914b06d48e?tpId=230&tqId=39755&ru=/exam/oj

1.题目解析

2.代码实现

cpp 复制代码
#include <iostream>
#include <cstring>

using namespace std;

const int N = 510;
int n,m;
int f[N][N];

int main()
{
    cin >> n >> m;
    memset(f,0x3f,sizeof(f));
    f[0][1] = 0;
    for(int i = 1;i <= n;i++)
    {
        for(int j = 1;j <= m;j++)
        {
            int t;
            cin >> t;
            f[i][j] = min(f[i - 1][j],f[i][j - 1]) + t;
        }
    }
    cout << f[n][m] << endl;
    return 0;
}

二.迷雾森林

题目链接:https://ac.nowcoder.com/acm/problem/53675

1.题目解析

2.代码实现

cpp 复制代码
#include <iostream>

using namespace std;

const int N = 3010, MOD = 2333;
int n,m;
int a[N][N];
int f[N][N];

int main()
{
    scanf("%d%d",&n,&m);
    for(int i = 1;i <= n;i++)
    {
        for(int j = 1;j <= m;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    f[n][0] = 1;
    for(int i = n;i >= 1;i--)
    {
        for(int j = 1;j <= m;j++)
        {
            if(a[i][j] == 0) f[i][j] = (f[i + 1][j] + f[i][j - 1]) % MOD;
        }
    }
    cout << f[1][m] << endl;
    return 0;
}

三.过河卒

题目链接:https://www.luogu.com.cn/problem/P1002

1.题目解析

2.代码实现

四.方格取数

题目链接:https://www.luogu.com.cn/problem/P1004

1.题目解析

2.代码实现

cpp 复制代码
#include <iostream>

using namespace std;
typedef long long LL;
const int N = 25;

int n,m,a,b;
LL f[N][N];

bool check(int x,int y)
{
    return (x == a && y == b) || (x != a && y != b && abs(x - a) + abs(y - b) == 3);
}

int main()
{
    cin >> n >> m >> a >> b;
    n++;m++;a++;b++;
    f[0][1] = 1;
    for(int i = 1;i <= n;i++)
    {
        for(int j = 1;j <= m;j++)
        {
            if(check(i,j)) continue;
            f[i][j] = f[i - 1][j] + f[i][j - 1];
        }
    }
    cout << f[n][m] << endl;
    return 0;
}
相关推荐
Tanecious.16 小时前
蓝桥杯备赛:Day8-小红杀怪
c++·蓝桥杯
wregjru16 小时前
【高并发服务器项目】2.服务器业务层设计详解
c++
生信研究猿16 小时前
leetcode 101.对称二叉树(不会做)
算法·leetcode·职场和发展
重生之我是Java开发战士16 小时前
【笔试强训】Week1:点击消除,数组中两个字符串的最小距离,dd爱框框,腐烂的苹果,大数乘法
java·开发语言·算法
枫叶林FYL16 小时前
【自然语言处理 NLP】前沿架构与多模态 选择性状态空间模型与并行扫描算法:从原理到实现
算法·自然语言处理·架构
WolfGang00732117 小时前
代码随想录算法训练营 Day29 | 动态规划 part02
算法·动态规划
样例过了就是过了17 小时前
LeetCode热题100 跳跃游戏 II
c++·算法·leetcode·贪心算法·动态规划
rit843249917 小时前
基于NSGA-II的多目标优化算法(MATLAB实现)
开发语言·算法·matlab
香蕉鼠片17 小时前
第三大的数
数据结构·算法·leetcode
汀、人工智能17 小时前
[特殊字符] 第28课:相交链表
数据结构·算法·链表·数据库架构··相交链表