洛谷[SHOI2002]滑雪题解
2024-08-30 10:35:13
什么破题啊
简直就是浪费我时间!
我每天还被我xf定目标了不知道嘛!
朴素的搜索只能得90分
#include <cstdio>
#include <iostream>
using namespace std;
const int N = ;
bool vis[N][N];
int n, m, mp[N][N], ans;
int dx[] = {-, , , }, dy[] = {, , -, };
int read() {
int s = , w = ;
char ch = getchar();
while(!isdigit(ch)) {if(ch == '-') w = -; ch = getchar();}
while(isdigit(ch)) {s = s * + ch - ''; ch = getchar();}
return s * w;
}
void dfs(int xx, int yy, int sum) {
ans = max(ans, sum);
for(int i = ; i < ; i++) {
int x = dx[i] + xx, y = dy[i] + yy;
if(x >= && x <= n && y >= && y <= m && !vis[x][y] && mp[x][y] < mp[xx][yy])
dfs(x, y, sum + );
}
}
int main() {
n = read(), m = read();
for(int i = ; i <= n; i++)
for(int j = ; j <= m; j++)
mp[i][j] = read();
for(int i = ; i <= n; i++)
for(int j = ; j <= m; j++)
dfs(i, j, );
printf("%d\n", ans + );
return ;
}
需要加入记忆化搜索
真想骂街我的记忆化怎么怎么就不对
可能是我太毛躁了
于是我就点开了题解
Code:
#include <cstdio>
#include <iostream>
using namespace std;
const int N = ;
int n, m, mp[N][N], ans, maxn[N][N];
int dx[] = {-, , , }, dy[] = {, , -, };
int read() {
int s = , w = ;
char ch = getchar();
while(!isdigit(ch)) {if(ch == '-') w = -; ch = getchar();}
while(isdigit(ch)) {s = s * + ch - ''; ch = getchar();}
return s * w;
}
int dfs(int xx, int yy) {
if(maxn[xx][yy] != ) return maxn[xx][yy];
int anss = ;
for(int i = ; i < ; i++) {
int x = dx[i] + xx, y = dy[i] + yy;
if(x >= && x <= n && y >= && y <= m && mp[x][y] < mp[xx][yy])
anss = max(anss, dfs(x, y) + );
maxn[xx][yy] = max(maxn[xx][yy], anss);
}
return maxn[xx][yy];
}
int main() {
n = read(), m = read();
for(int i = ; i <= n; i++)
for(int j = ; j <= m; j++)
mp[i][j] = read(), maxn[i][j] = ;
for(int i = ; i <= n; i++)
for(int j = ; j <= m; j++) {
int anss = dfs(i, j);
ans = max(ans, anss);
}
printf("%d ", ans);
return ;
}
TTT,TnmT!不是脏话
谢谢收看,祝身体健康!(反正我是被气死了)
最新文章
- 【异常】ORA-01536: space quota exceeded for tablespace
- Python 爬虫 字符集乱码问题
- 清除WKWebView的缓存
- [团队项目] Scrum 项目 3.0 SCRUM 流程的步骤2: Spring 计划
- Flask服务入门案例
- python 中 sorted() 和 list.sort() 的用法
- JAVA:类的三大特征,抽象类,接口,final关键字<;3>;
- R语言基础(二) 可视化基础
- Starling性能优化技巧十五则
- [WinForm]C# .net防止一个程序(WinForm)重复运行的方法。
- 如何在Python脚本中调用外部命令(就像在linux shell或Windows命令提示符下输入一样)
- 项目中使用sass,如何实现自动编译
- Mysql忘记数据库密码以及用户授权案例展示
- Docker 架构(四)
- $(";#form1";). serialize()提交表单
- 关于GC.Collect在不同机器上表现不一致问题
- acegi security实践教程—入门
- spring @Transactional注解无效
- 7.scala:继承
- BZOJ4976:宝石镶嵌(DP&;思维)
热门文章
- 利用mysql的LOAD DATA INFILE的功能读取客户端文件
- 改写URL的查询字符串QUERY_STRING[URL重定向问号问题](转)
- lock、tryLock和lockInterruptibly的差別
- C# 直接清空缓存方法
- tk.mybatis 中一直报...table doesn&#39;t exists
- 【05】Jenkins:用户权限管理
- 《 .NET并发编程实战》阅读指南 - 第8章
- jquery动画控制非css属性
- Service Mesh服务网格新生代--Istio
- 2019 多点Dmalljava面试笔试题 (含面试题解析)