这题是dp还是dfs+记忆化?(其实好像没什么区别?)
用f[i,j]表示滑到(i,j)时之后最多能滑多远,依次穷举每一个起点(i,j)则
f[i,j]=max{f[i,j-1],f[i-1,j],f[i+1,j],f[i,j+1]}+1 (当然滑到那个点的高度要小于(i,j)的高度)
1 const dx:array[1..4] of integer=(0,0,-1,1);
2
转载
2013-11-30 13:59:00
53阅读
2评论
题意:有一个矩阵,要求在矩阵上找到一个四方向行走的路线,使得每走一步走到的格子中的数字都比上一步的要小,问路线最长有多长。分析:先将所有格子按数字大小排序。然后从最大的开始,每次看其四周是否有能走的格子,并更新四周格子的路线长度(每个格子中有一个变量记录以该格子为终点的最长路线长度)。当然,除了上述...
转载
2013-07-19 10:06:00
29阅读
2评论
滑雪Time Limit:1000MSMemory Limit:65536KTotal Submissions:77423Accepted:28779DescriptionMichael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次...
转载
2014-09-20 11:22:00
77阅读
2评论
滑雪 DescriptionMichael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子 1 2 3 4 516 17 18 19 615 24 25 20 7
原创
2023-08-21 16:45:22
88阅读
题目链接: http://poj.org/problem?id=1088 题目要求: 一个人可以从某个点滑向上下左右相邻四个点之一,当且仅当高度减
我是渣渣 我是渣渣 。。。。记忆化搜索 看了学长的代码 和算法
原创
2022-08-05 10:33:12
23阅读
就是用DP,DP[i][j]是在这个(i,j)位置作为起点的最长长度。 因为可能会超时,DP的话每次就是记录,然后就不用回溯了。 很简单的DFS里面的记忆化搜索。#include #include #include #include #include #include #inclu...
转载
2016-03-03 17:51:00
33阅读
D - 滑雪
Crawling in process... Crawling failed Time Limit:1000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64u Submit
Status
原创
2022-08-08 16:54:02
45阅读
题目描述 trs喜欢滑雪。他来到了一个滑雪场,这个滑雪场是一个矩形,为了简便,我们用r行c列的矩阵来表示每块地形。为了得到更快的速度,滑行的路线必须向下倾斜。 例如样例中的那个矩形,可以从某个点滑向上下左右四个相邻的点之一。例如24-17-16-1,其实25-24-23…3-2-1更长,事实上这是最长的一条。输入输入文件 第1行: 两个数字r,c(1< =r,
转载
2021-04-26 16:34:35
418阅读
2评论
DescriptionMichael喜欢滑雪...
转载
2019-04-05 22:13:00
98阅读
2评论
DescriptionMichael喜欢滑雪...
转载
2019-04-05 22:13:00
82阅读
2评论
本来十分简单的一道题,可却花了我那么长时间。测试了各种数据都是对的,一提交就WA,郁闷死了!!!
后来才发现是search()函数中的temp[4]没有初始化。。。
改成 int temp[4]={0}后就AC了。。。。
244K
16MS
C++
原创
2012-07-06 20:53:14
712阅读
注意行列关系,一不小心就乱了,出了问题先检查这里。
#include <stdio.h> #include <stdlib.h> struct node { int x,y,h; };
原创
2011-03-07 10:39:09
497阅读
Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子 1 2 3 4 516 17 18 19 615 24 25 20 714 23 22 21 813 12 11 10 9一个人可以从某个点滑向上下左右相邻四个点之一,当且仅当高度减小。在上面的例子中,一条可滑行的滑坡为24-17-16-1。当然25-24-23-...-3-2-1更长。事实上,这是最长的一条。Input输...
原创
2021-07-29 16:19:12
82阅读
#include <iostream>using namespace std;int r,c,height[101][101],skate[101][101];int dp(int i,int j){ int up,down,left,right,max=0; if(i>1&&height[i][j]>height[i-1][j]) { if(skate[i-1][j]!=0) down=skate[i-1][j]; else down=dp(i-1,j); if(max<down)max=down; } if(i<r&&he
转载
2011-07-20 22:33:00
68阅读
2评论
Description Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子 1 2
转载
2018-07-17 11:04:00
47阅读
滑雪 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 75626 Accepted: 28028 难得一见的中文题 题意就不多做解释 求最长路径 简单点的动规 唯一的麻烦就是没告诉你起点和终点 没关系 直接一个个暴搜反正数据不大。
转载
2017-05-26 18:42:00
64阅读
2评论