POJ 1088-滑雪

矩阵里的数字代表当前点的高度,只能从高的点滑到低的点,求最长能滑的距离。初始点

不规定。我们可以向每个点的四周搜索,能走则就在当前距离加1。并将已经求的值保存在

二维数组中。(记忆化搜索)

 

/*Accepted    252K    47MS    C++    1158B    2012-07-23 16:13:17*/
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<algorithm>
using namespace std;const int MAXN = 105;
const int dx[] = {0, 0, 1, -1};
const int dy[] = {1, -1, 0, 0};int map[MAXN][MAXN], d[MAXN][MAXN];
int R, C, ans;void init()
{int i, j;for( i = 1; i <= R; i ++)for( j = 1; j <= C; j ++){scanf( "%d", &map[i][j]);d[i][j] = -1;}
}
int dfs( int x, int y)
{int i, ans, nx, ny;if( d[x][y] > 0) return d[x][y];ans = 0;for( i = 0; i < 4; i ++){nx = x + dx[i];ny = y + dy[i];if( map[x][y] <= map[nx][ny] || nx < 1 || nx > R || ny < 1 || ny > C)continue;ans = max( ans, dfs(nx, ny) + 1);}return ans;
}int main()
{int i, j;while( scanf( "%d%d", &R, &C) == 2){init();ans = 0;for( i = 1; i <= R; i ++)for( j = 1; j <= C; j ++){d[i][j] = dfs(i, j);ans = max( ans, d[i][j]);}printf( "%d\n", ans + 1);}return 0;
}

 

 下面的代码TLE了

#include<cstdio>
#include<cstring>
#include<cstdlib>
#define MAXN 105
int R, C, lgst;
int map[MAXN][MAXN];
const int dx[] = { 1, -1, 0, 0};
const int dy[] = { 0, 0, 1, -1};

void dfs( int x, int y, int dep)
{
if( x < 0 || x >= R || y < 0 || y >= C) return;
if( lgst < dep) lgst = dep;
for( int d = 0; d < 4; d ++)
{
int nx = x + dx[d];
int ny = y + dy[d];
if( map[x][y] > map[nx][ny])
dfs( nx, ny, dep + 1);
}
}

void init()
{
for( int i = 0; i < R; i ++)
for( int j = 0; j < C; j ++)
{
scanf( "%d", &map[i][j]);
}
}

int main()
{
scanf( "%d%d", &R, &C);
init();
lgst = 1;
for( int i = 0; i < R; i ++)
for( int j = 0; j < C; j ++)
dfs( i, j, 1);
printf( "%d\n", lgst);
return 0;
}

 

转载于:https://www.cnblogs.com/Yu2012/archive/2011/12/15/2289561.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/462331.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PostgreSQL的 initdb 源代码分析之二十一

继续分析&#xff1a; setup_schema(); 展开&#xff1a; 实质就是创建info_schema。 cmd 是&#xff1a; "/home/pgsql/project/bin/postgres" --single -F -O -c search_pathpg_catalog -c exit_on_errortrue -j template1 >/dev/null infor_schem_file是&…

Be My Eyes app:我是你的眼

http://www.cocoachina.com/industry/20150122/10979.html Be My Eyes是丹麦软件工作室Robocat为一家同名非营利性企业推出的一款应用&#xff0c;主要通过视频聊天的方式将志愿者和视力受损的患者联系起来&#xff0c;从而实现远程协助的功能。 Be My Eyes的核心概念非常简单-…

C#面试题整理(不带答案)

1.维护数据库的完整性、一致性、你喜欢用触发器还是自写业务逻辑&#xff1f;为什么? 2.什么是事务&#xff1f;什么是锁&#xff1f; 3.什么是索引&#xff0c;有什么优点&#xff1f; 4.视图是什么&#xff1f;游标是什么&#xff1f; 5.什么是存储过程&#xff1f;有什么优…

nRF905

nRF905[1]无线芯片是有挪威NORDIC公司出品的低于1GHz无线数传芯片&#xff0c;主要工作于433MHz、868MHz和915MHz的ISM频段。芯片内置频率合成器、功率放大器、晶体振荡器和调制器等功能模块&#xff0c;输出功率和通信频道可通过程序进行配置。非常适合于低功耗、低成本的系统…

用户界面概述

视图是提供了良好定义的功能集合的内容区域。 控件则是能够触发即时动作或可视化结果的图形对象 无论是什么类型的应用程序&#xff0c;都有一个应用程序窗口&#xff0c;该窗口为您提供了一个能够呈现应用程序的所有信息的背景。但是用户对这个窗口没有概念&#xff0c;他们对…

Firefox for iOS现身Github 使用Swift编写

http://www.cocoachina.com/industry/20141208/10545.html 自从Mozilla新CEO走马上任以来&#xff0c;该公司对于发展路线显然与以往有所不同&#xff0c;对该公司最重要的产品Firefox浏览器来说&#xff0c;也有了很多大的改变&#xff0c;包括前几天Mozilla宣布&#xff0c;它…

UVA 213 Message Decoding

题目链接&#xff1a;https://vjudge.net/problem/UVA-213 题目翻译摘自《算法禁赛入门经典》 题目大意 考虑下面的 01 串序列&#xff1a;  0, 00, 01, 10, 000, 001, 010, 011, 100, 101, 110, 0000, 0001, …, 1101, 1110, 00000, …  首先是长度为 1 的串&#xff0c;然…

The Event System

The Event System 在Qt中&#xff0c;事件是继承了虚拟类QEvent的对象&#xff0c;它代表了程序所发生的事情或者程序需要知道的一个外部活动的结果。事件可以被任意 QObject子类的实例接收和处理&#xff0c;是与widgets密切相关。本文描述了在一个典型的程序中事件是如何被传…

分组取最新记录的SQL

常遇到这样的情况&#xff0c;要取得所有客户的最新交易记录&#xff0c;读取网站所有浏览者最后一次访问时间。一个客户只读取最新的一次记录&#xff0c;相同&#xff0c;大部分的人首先想 到的就是排除所有记录&#xff0c;相同的只取一条。用distint,但是distint只能取到一…

g++参数介绍

地址:http://www.cnblogs.com/lidan/archive/2011/05/25/2239517.html [介绍] gcc and g分别是gnu的c & c编译器 gcc/g在执行编译工作的时候&#xff0c;总共需要4步 1.预处理,生成.i的文件 预处理器cpp 2.将预处理后的文件不转换成汇编语言,生成文件.s 编译器e…

利用CVE-2019-1040 - 结合RCE和Domain Admin的中继漏洞

0x00 前言 在本周之前&#xff0c;微软发布了针对CVE-2019-1040的补丁&#xff0c;这是一个允许绕过NTLM身份验证中继攻击的漏洞。这个漏洞是由Marina Simakov和Yaron Zinar&#xff08;以及微软咨询公司的其他几位成员&#xff09;发现的&#xff0c;他们在这里发表了一篇关于…

URL 学习总结

1、绝对路径&#xff08;以"/"斜线开头的路径&#xff0c;代表相对于当前Web应用&#xff09;&#xff1a; a)地址给服务器用&#xff0c;web应用名称可以省略。 请求包含&#xff1a;request.getRequestDispatcher("/index.jsp").include(request, r…

[转]DEV界面

DevExpress控件使用经验总结 DevExpress是一个比较有名的界面控件套件&#xff0c;提供了一系列的界面控件套件的DotNet界面控件。本文主要介绍我在使用DevExpress控件过程中&#xff0c;遇到或者发现的一些问题解决方案&#xff0c;或者也可以所示一些小的经验总结。总体来讲&…

g++和gcc的区别

编译阶段是相同的&#xff0c;链接阶段g默认链接c库&#xff0c;gcc没有。 所以一般情况下用gcc编译c文件&#xff0c;用g编译cpp文件。 但是也可以用gcc编译cpp文件&#xff0c;但后面需要加一个选项-lstdc&#xff0c;作用是链接c库 还可以用g编译c文件

Flink中的Time与Window

一、Time 在Flink的流式处理中&#xff0c;会涉及到时间的不同概念 Event Time&#xff1a;是事件创建的时间。它通常由事件中的时间戳描述&#xff0c;例如采集的日志数据中&#xff0c;每一条日志都会记录自己的生成时间&#xff0c;Flink通过时间戳分配器访问事件时间戳 Ing…

电脑方面的技巧

快速启动程序     很多朋友发现&#xff0c;在“运行”窗口中可以直接运行Ping、Telnet等系统自带的命令&#xff0c;可是运行Winword.exe、QQ.exe等程序时却出错。其实这主要没有定义系统变量。      打开系统属性窗口&#xff0c;切换到“高级”选项卡&#xff0c;单…

在linux下编译boost库【搜集】

http://www.cnblogs.com/flywuya/archive/2010/11/30/1892483.html 编译环境 操作系统:SUSE linux Enterprise Server 10 64-bit 编译工具:gcc 4.1.2 1.下载boost1.36 2.解压boost到/usr/share 3.在命令行运行/usr/share/boost_1_36_0/tools/jam/src/build.sh生成bjam 4.复制/u…

postgresql安装配置

postgresql安装配置 一,什么是postgresql PostgreSQL是以加州大学伯克利分校计算机系开发的 POSTGRES 版本 4.2 为基础的对象关系型数据库管理系统&#xff08;ORDBMS&#xff09;,简称pgsql,它支持大部分 SQL 标准并且提供了许多其他现代特性&#xff1a;复杂查询 外键 触发器…

Dart中的mixins

/* mixins的中文意思是混入&#xff0c;就是在类中混入其他功能。在Dart中可以使用mixins实现类似多继承的功能&#xff0c;with关键字因为mixins使用的条件&#xff0c;随着Dart版本一直在变&#xff0c;这里讲的是Dart2.x中使用mixins的条件&#xff1a;1、作为mixins的类只能…

[转]Messenger:使用消息的跨进程通信

本文转自&#xff1a;http://xwangly.iteye.com/blog/1109424 Messenger:信使 官方文档解释&#xff1a;它引用了一个Handler对象&#xff0c;以便others能够向它发送消息(使用mMessenger.send(Message msg)方法)。该类允许跨进程间基于Message的通信(即两个进程间可以通过Mess…