POJ 1154
2024-08-27 07:28:31
#include<iostream>
#include<stdio.h>
#define MAXN 20
using namespace std; int DFS(int i,int j,int len,int r,int c);
bool key[];
char a[MAXN][MAXN];
//bool bool_lean[MAXN][MAXN];
int main()
{
//freopen("acm.acm","r",stdin);
int i;
int j;
int r;
int c;
cin>>r>>c;
// memset(bool_lean,false,sizeof(bool_lean));
for(i = ; i < r; ++ i)
{
for(j = ; j < c; ++ j)
{
cin>>a[i][j];
}
}
key[a[][]-'A'] = true;
cout<<DFS(,,,r,c)<<endl;
} int DFS(int i,int j,int len,int r,int c)
{
int tem;
tem = len;
int max = ;
if(i > )
{
if(!key[a[i-][j] - 'A'])
{
key[a[i-][j] - 'A'] = true;
// bool_lean[i-1][j] = true;
len = DFS(i-,j,len+,r,c);
key[a[i-][j] - 'A'] = false;
// bool_lean[i-1][j] = false;
if(len > max)
max = len;
len = tem;
} }
if(i < r-)
{
if(!key[a[i+][j] - 'A'])
{
key[a[i+][j] - 'A'] = true;
// bool_lean[i+1][j] = true;
len = DFS(i+,j,len+,r,c);
key[a[i+][j] - 'A'] = false;
// bool_lean[i+1][j] = false;
if(len > max)
max = len;
len = tem;
} }
if(j > )
{
if(!key[a[i][j-] - 'A'])
{
key[a[i][j-] - 'A'] = true;
// bool_lean[i][j-1] = true;
len = DFS(i,j-,len+,r,c);
key[a[i][j-] - 'A'] = false;
// bool_lean[i][j-1] = false;
if(len>max)
max = len;
len = tem;
}
}
if(j < c-)
{
if(!key[a[i][j+] - 'A'])
{
key[a[i][j+] - 'A'] = true;
// bool_lean[i][j+1] = true;
len = DFS(i,j+,len+,r,c);
key[a[i][j+] - 'A'] = false;
// bool_lean[i][j+1] = false;
if(len>max)
max = len;
len = tem;
}
}
if(len > max)
max = len;
return max;
}
关注我的公众号,当然,如果你对Java, Scala, Python等技术经验,以及编程日记,感兴趣的话。
技术网站地址: vmfor.com
最新文章
- Java 8五大主要功能为开发者提供了哪些便利?
- arm,iptables: No chain/target/match by that name.
- golang笔记——map
- jquery 的 ajax 在 非阻塞 时返回 XMLHttpRequest
- 让你了解x86的中断
- 第 16 章 观察者模式【Observer Pattern】
- oracle10G之前介质下载地址【珍藏版】
- django-template-loader
- ERP中文档权限设置:只能浏览不能下载?如何实现
- CNCC2017中的深度学习与跨媒体智能
- HTTPS、证书与使用Charles抓包
- 聊聊 Spring Boot 2.x 那些事儿
- rootkit后门检测工具
- php+ajax实现登录按钮加载loading效果
- eclipse插件大全
- 安装Hue后的一些功能的问题解决干货总结(博主推荐)
- CF97C Winning Strategy
- Android之水波纹点击效果(RippleView)
- 第6章Zabbix分布式监控
- 小程序点击清除input内的内容不生效