POJ 1088 滑雪 (DP)
来源:互联网 发布:后三胆码计算软件 编辑:程序博客网 时间:2024/06/05 05:14
还是感叹别人的码写的真好!!以及没事别用C++,,真的比C慢很多。。。。
#include <cstdio>#include <cstring>#include <iostream>using namespace std;int n, m;int map[1000][1000];int ans[1000][1000]; //存储每一个点能滑到的最大距离int dp(int i, int j) { //局部最优解 if (ans[i][j] > 0) //避免重复计算 return ans[i][j]; int maxn = 0; int dir[4][2] = {{1, 0}, {0, 1}, {-1, 0}, {0, -1}}; int tempi, tempj; for (int k = 0; k < 4; k++) { tempi = i + dir[k][0]; tempj = j + dir[k][1]; if (tempi > 0 && tempi <= n && tempj > 0 && tempj <= m && map[tempi][tempj] < map[i][j]) { maxn = max(maxn, dp(tempi, tempj)); } } return ans[i][j] = maxn + 1;}int main(void) { while (~(scanf("%d%d", &n, &m))) { int answer = 0; memset(map, 0, sizeof(map)); for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) scanf("%d", &map[i][j]); } memset(ans, 0, sizeof(ans)); for (int i = 1; i <= n; i++) { //遍历每一个点 for (int j = 1; j <= m; j++) { ans[i][j] = dp(i, j); answer = max(ans[i][j], answer); //整体最优解 } } printf("%d\n", answer); } return 0;}
阅读全文
0 0
- POJ 1088 滑雪(DP)
- POJ 1088 滑雪(dp)
- poj - 1088 - 滑雪(dp)
- POJ 1088 滑雪 (dp)
- POJ 1088 滑雪(DP)
- POJ 1088 滑雪(dp)
- POJ 1088 滑雪 (DP)
- POJ 1088 滑雪(dp)
- poj 1088 滑雪(DP)
- POJ 1088 滑雪 DP
- poj 1088 滑雪 (DP)
- poj 1088 滑雪 DP
- POJ 1088 滑雪 DP
- POJ 1088-滑雪(dp)
- poj 1088 滑雪DP
- POJ 1088 滑雪 DP
- POJ-----1088---滑雪DP
- 【DP】POJ 1088 滑雪
- List的子类ArrayList .Vector , LinkedList的特点
- 中文字符串长度问题:strlen和mb_strlen
- 一步步实现:JPA的基本增删改查CRUD(jpa基于hibernate)
- npm 的rollbackFailedOptional以及node.js npm fetchmetadata 卡住错误解决~
- hdu 6058 Kanade's sum
- POJ 1088 滑雪 (DP)
- java 项目整合ckeditor实现图文混排
- 广告行业中富媒体的概念
- lr学习笔记--录制过程自动设置检查点检查该动作成功的标志相当于断言web_reg_find
- Mac 命令行下 ll命令
- OpenCV学习(6) 文件和Mat之间的数据交换
- sql函数concat的用法
- Java开发环境搭建(进阶配置一 ——Maven)
- mfc 字符总结,char* cString相互转换