滑雪 ————记忆化搜索

记忆化搜索——AcWing 901. 滑雪 记忆化搜索是一种结合了搜索和动态规划思想的方法。它通过将已经计算过的结果存储起来,在后续遇到相同情况时直接返回存储的结果,避免重复计算。 阅读详情

Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长的滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9

一个人可以从某个点滑向上下左右相邻四个点之一,当且仅当高度减小。在上面的例子中,一条可滑行的滑坡为24-17-16-1。当然25-24-23-…-3-2-1更长。事实上,这是最长的一条。
Input
输入的第一行表示区域的行数R和列数C(1 <= R,C <= 100)。下面是R行,每行有C个整数,代表高度h,0<=h<=10000。
Output
输出最长区域的长度。
Sample Input
5 5
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
Sample Output
25


#include<bits/stdc++.h>
using namespace std;
const int MAXN=107;
int a[MAXN][MAXN];
int dp[MAXN][MAXN];
int d[4][2]={0,1, 0,-1, 1,0, -1,0};
int R,C;
int max_;
bool check(int x,int  y)
{
    if(x>=0&&x<R&&y>=0&&y<C)
        return true;
    else
        return false;
}


int dfs(int x,int y)
{
    if(dp[x][y])    return dp[x][y];
    int ans=0;
    for(int i=0;i<4;i++)
    {
        int nx=x+d[i][0];
        int ny=y+d[i][1];
        if(check(nx,ny)&&a[nx][ny]!=-1&&a[nx][ny]<a[x][y])
            dp[x][y]=max(dp[x][y],dfs(nx,ny)+1);
    }
    return dp[x][y];
}




int main()
{
    while(~scanf("%d %d",&R,&C))
    {
        memset(a,-1,sizeof(a));//初始化各个点高度,默认-1,表示不存在
        for(int i=0;i<R;i++)
            for(int j=0;j<C;j++)
                cin>>a[i][j];//输入各点的高度
        memset(dp,0,sizeof(dp));
        max_=0;
        for(int i=0;i<R;i++)
            for(int j=0;j<C;j++)
                max_=max(max_,dfs(i,j));//找出最大值
        cout<<max_+1<<endl;//+1.  因为最后一个点没被算进去。
    }
    return  0;
}


滑雪问题(记忆化搜索) 注:由于本题有多种不同版本,这里统一用XXX和YYY代替不同的专有名词 【问题描述】 XXX喜欢滑雪,这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待YYY来载你。XXX想知道载一个区域中最长的滑坡。 区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子: 顺治可以从某个点滑向上下左右相邻四个点之一,当且仅当高度减小。在上面的例子中,一条可滑行的滑坡为24-17-16-1。当然25-24-23-…-3-2-1更长。事实上. 阅读详情

相关推荐

计算机组成原理实验二 运算器组成实验

事实上,ALU的设计是在全加器的基础上,对全加器功能的扩展来实现符合要求的多种算术/逻辑运算的功能。为了实现多种功能的运算,An、Bn数据是不能直接与全加器相连接的,它们受到功能变量F3—F1的制约,因此,可由An、Bn数据和功能变量F3-F1组合成新的函数Xn 、Yn,然后,再将Xn 、Yn和下一位进位Cn-1通过全加器进行全加运算以实现所需的运算功能。AC寄存器可用来存储ALU的输入以实现两个操作数的运算操作,也可以用来存储来自ALU的结果,以将这些结果反馈给ALU以进行更多的处理。

qq_63574533的博客 1450

林大oj滑雪

滑雪 Problem:A Time Limit:1000ms Memory Limit:65536K Description 每到冬天,信息学院的张健老师总爱到二龙山去滑雪,喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来

猿的进化 894

高分三号SAR影像超精细条带数据预处理实战:从原始数据到地理编码的完整操作指南

本文提供了高分三号SAR影像超精细条带数据预处理的完整实战指南。详细介绍了从原始数据导入、多视处理、滤波去噪、DEM准备到地理编码与辐射定标的完整流程,帮助用户利用SARscape软件将原始SAR数据转化为可用于分析的地理编码产品。

tree8的博客 578

记忆化搜索—— 滑雪[洛谷]

了解暴力搜索的缺陷以及记忆化搜索的用途和具体实现。

Turing_Sheep的博客 1028

HyperLPR3车牌识别-Android-SDK光速部署与使用

基于深度学习高性能中文车牌识别 High Performance Chinese License Plate Recognition Framework.快速部署AndroidSDK

tunm 6120

NeurIPS‘25新研究!PINN+GNN强强联手,模型精度飙升50%!

物理图神经网络研究取得重大进展!UCLA团队提出的PhysGNN架构在NeurIPS'2025上引发关注,该模型成功融合PINN的物理约束优势与GNN的图结构处理能力,解决了工程仿真中的关键瓶颈。研究显示,PhysGNN在城市热网预测中误差降低42%,电网负荷模拟的物理规则违反率下降68%。同步解析的SyncTREE模型则创新性地将RC树物理特性融入GNN,实现毫秒级IC时序分析;HSPGNN模型通过嵌入偏微分方程,显著提升多变量时间序列填补精度。

m0_73122726的博客 1022

[记忆化搜索] 滑雪(模板题+记忆化搜索)

文章目录0. 前言1. 记忆化搜索模板题 0. 前言 动态规划问题可以使用记忆化搜索 + 递归来求解。也是 dfs 优化的方式,两者本无区别。 1. 记忆化搜索模板题 901. 滑雪 重点: 记忆化搜索、递归实现 dp 思路: 状态定义: f[i][j]:所有从 (i, j) 开始滑的路径的最大值 状态转移: 分类依据:滑的方向就是上下左右四个方向,当下一个位置的高度低于当前高度的是个更新状态即可 显然,计算 f[i][j] 时,需要提前计算得到前一个转移过来的状态,然后再这样一直往前找,是

Y-puyu 的博客 1031

SQL注入详解

SQL注入(SQL Injection)是一种常见的Web安全漏洞,主要形成的原因是在数据交互中,前端的数据传入到后台处理时,没有做严格的判断,导致其传入的“数据”拼接到SQL语句中后,被当作SQL语句的一部分执行。 从而导致数据库受损(被脱库、被删除、甚至整个服务器权限陷)。 即:注入产生的原因是后台服务器接收相关参数未经过滤直接带入数据库查询...

渗透之路,攻防之间皆学问 26万+

【记忆化搜索】滑雪

题目:滑雪 rqnoj317 题目描述 Michael喜欢滑雪这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子 1   2   3  4  5 16 17 18 19 6 15 24 25 2

Jiangzh_MZOI 714

深度学习论文: Cultivated Land Extraction from High-Resolution Remote Sensing Image

深度学习论文: Cultivated Land Extraction from High-Resolution Remote Sensing Image The Winning Solution to the iFLYTEK Challenge 2021 Cultivated Land Extraction from High-Resolution Remote Sensing Image PDF: https://arxiv.org/pdf/2202.10974.pdf PyTorch代码: https:

mingo_敏 3480

在MATLAB和Simulink中设计并仿真一个电动汽车整车动力学模型与控制系统

电动汽车(EV, Electric Vehicle)的动力学建模与控制仿真在车辆开发过程中起着至关重要的作用。通过Simulink进行整车动力学模型的构建和控制策略的验证,可以有效评估车辆性能、优化系统设计并降低开发成本。以下是如何在MATLAB和Simulink中设计并仿真一个电动汽车整车动力学模型与控制系统的详细步骤。通过上述步骤,我们成功设计并实现了基于Simulink的电动汽车整车动力学模型与控制仿真。该系统能够模拟复杂的整车动力学行为,验证控制策略的有效性,并通过优化设计提高车辆的性能和可靠性。

xiaoheshang_123的博客 550

滑雪题解-记忆化搜索,DP

滑雪DescriptionSample Input解题思路搜索(DFS)剪枝记忆化讨论动态规划解法(DP)总结 Description Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8

zhy_Learn的博客 428

【教程4>第10章>第13节】基于FPGA的图像双边滤波开发——单通道双边滤波Verilog实现

本文介绍了基于Vivado 2022.2的单通道高斯滤波FPGA实现方案。主要内容包括:1)采用3×3窗口像素提取、高斯权值计算、exp指数运算等模块构建双边滤波系统;2)详细分析了Verilog HDL实现的顶层设计文件,包含窗口数据生成、指数计算、混合权重、归一化处理等关键模块;3)展示了图像双边滤波器的RTL结构图。该设计为后续实现RGB三通道图像高斯滤波及MATLAB联合仿真奠定了基础。

FPGA/MATLAB学习教程/源码/项目合作开发 263

【记忆化搜索】| AcWing 901. 滑雪

901. 滑雪 题目描述 给定一个R行C列的矩阵,表示一个矩形网格滑雪场。 矩阵中第 i 行第 j 列的点表示滑雪场的第 i 行第 j 列区域的高度。 一个人从滑雪场中的某个区域内出发,每次可以向上下左右任意一个方向滑动一个单位距离。 当然,一个人能够滑动到某相邻区域的前提是该区域的高度低于自己目前所在区域的高度。 下面给出一个矩阵作为例子: 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 在给定矩阵中,一条可行的

HangHug_L的博客 556

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

滑雪(记忆化搜索)

滑雪前言题目讲解题意数据范围思路代码思考与收获迭代dp的思路DAG思考 前言 滑雪这道题是记忆化搜索的一道典型例题,通过这道例题的学习,可以初探记忆化搜索的使用场景以及使用方法。 题目讲解 题意 给定一个n∗mn*mn∗m矩阵,从任意点开始向上、下、左、右四个方向走,并且只能向数值降低的方向走,求最长行走距离。 数据范围 1≤n,m≤3001 \leq n,m \leq 3001≤n,m≤300 1≤wi,j≤100001 \leq w_{i,j} \leq 100001≤wi,j​≤10000 思路 可以

心升明月的博客 573

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

滑雪——记忆化搜索(C++)

AcWing 901. 滑雪 给定一个R行C列的矩阵,表示一个矩形网格滑雪场。 矩阵中第 i 行第 j 列的点表示滑雪场的第 i 行第 j 列区域的高度。 一个人从滑雪场中的某个区域内出发,每次可以向上下左右任意一个方向滑动一个单位距离。 当然,一个人能够滑动到某相邻区域的前提是该区域的高度低于自己目前所在区域的高度。 下面给出一个矩阵作为例子: 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 在给定矩阵中

Annabel_CM的博客 1059

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

动态规划-滑雪(记忆化搜索)

动态规划-滑雪题目题解1.暴力搜索(dfs)2.记忆化搜索代码1.暴力搜索(dfs)2.记忆化搜索 题目 题解 1.暴力搜索(dfs) 可以通过枚举每个点,将每个点作为dfs的起始点,去搜索一条最长的路径,限制条件就是严格单调下降。注意:对于此题做dfs搜索的时候,是不用标记访问的点数的,因为,限制条件是严格单调下降,每一个点只能被访问一次,不会出现环路的状态 ,并且需要遍历所有的路径,找到最大的长度。 2.记忆化搜索 在暴力搜索中,需要枚举每一个点,且以每一个点作为起点进行搜索,仔细想一想递归的过程就知

weixin_44775484的博客 460

滑雪(记忆化搜索)

给定一个R行C列的矩阵,表示一个矩形网格滑雪场。 矩阵中第 i 行第 j 列的点表示滑雪场的第 i 行第 j 列区域的高度。 一个人从滑雪场中的某个区域内出发,每次可以向上下左右任意一个方向滑动一个单位距离。 当然,一个人能够滑动到某相邻区域的前提是该区域的高度低于自己目前所在区域的高度。 下面给出一个矩阵作为例子: 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 在给定矩阵中,一条可行的滑行轨迹为24-17-2-1。

qq_43738331的博客 255

【记忆化搜索】P1434 滑雪

链接: 洛谷P1434Michael 喜欢滑雪。这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael 想知道在一个区域中最长的滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子: 一个人可以从某个点滑向上下左右相邻四个点之一,当且仅当高度会减小。在上面的例子中,一条可行的滑坡为 24−17−16−124-17-16-124−17−16−1(从 242424 开始,在 111 结束)。当然

2301_80361697的博客 968

SSL·滑雪【记忆化搜索】

滑雪【记忆化搜索】 SSL 1202 PKU1088Description--Input--Output--Sample Input--Sample Output--解题思路--代码-- Description– Michael喜欢滑雪,这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。 Michael想知道一个区域中...

ヽ(o_ _)o 202

luogu1434:滑雪:记忆化搜索

题目连接 该题是luogu试炼场的2-9:T2 题目大意 给出一个n*m的矩阵,求最长的链; 要求1:方向只有4个:上/下/左右; 要求2:值只能从高到低; 题目分析 因为是100*100,要考虑记忆化; 解题思路 每个点都尝试做起点; 简单记忆化; PS:本题用DP也很容易理解,以后有需要再上代码; 上代码 //luogu1434:滑雪 //每个点都尝试做开头,记忆化处...

liusu201601的博客 310

滑雪 记忆化搜索

记忆化搜索

WananRd 436

滑雪——记忆化搜索

他来到了一个滑雪场,这个滑雪场是一个矩形,为了简便,我们用r行c列的矩阵来表示每块地形。为了得到更快的速度,滑行的路线必须向下倾斜。现在给定你一个二维矩阵表示滑雪场各区域的高度,请你找出在该滑雪场中能够完成的最长滑雪轨迹,并输出其长度(可经过最大区域数)。在给定矩阵中,最长的滑行轨迹为25-24-23-…-3-2-1,沿途共经过25个区域。第1行: 两个数字r,c(1

no_play_no_games的博客 447

POJ 1088 滑雪 记忆化搜索

#include <iostream>using namespace std; int row ,col;int matrix[105][105]={0};// 保存原始数据int cnt[105][105]={0}; // 记录每一个点的最大滑雪长度int DP(int i, int j){int max = 0; // 如果已经处理过,直接返回(记忆化搜索效率之所...

dikuimei3153的博客 171

POJ 1088 滑雪 (记忆化搜索)

滑雪 Time Limit:1000MS Memory Limit:65536K Total Submissions:77134 Accepted:28672 Description Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡...

110
上一篇: FatMouse and Cheese ————记忆化搜索
下一篇: Longest Increasing Subsequence————LIS个数
陶鸿杰
博客等级 码龄9年 93粉丝 298原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值