#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

POJ 1154的更多相关文章

  1. poj 1154 letters (dfs回溯)

    http://poj.org/problem?id=1154 #include<iostream> using namespace std; ]={},s,r,sum=,s1=; ][]; ...

  2. POJ 2462 / HDU 1154 Cutting a Polygon

    就这样莫名其妙的过了,不过可以确定之前都是被精度卡死了.真心受不了精度问题了. 题意:一条直线在一个不规则多边形内的长度,包括边重合部分. 首先计算出所有交点,然后按想x,y的大小进行二级排序. 然后 ...

  3. poj 题目分类(1)

    poj 题目分类 按照ac的代码长度分类(主要参考最短代码和自己写的代码) 短代码:0.01K--0.50K:中短代码:0.51K--1.00K:中等代码量:1.01K--2.00K:长代码:2.01 ...

  4. POJ题目分类(按初级\中级\高级等分类,有助于大家根据个人情况学习)

    本文来自:http://www.cppblog.com/snowshine09/archive/2011/08/02/152272.spx 多版本的POJ分类 流传最广的一种分类: 初期: 一.基本算 ...

  5. POJ题目细究

    acm之pku题目分类 对ACM有兴趣的同学们可以看看 DP:  1011   NTA                 简单题  1013   Great Equipment     简单题  102 ...

  6. 【转】POJ百道水题列表

    以下是poj百道水题,新手可以考虑从这里刷起 搜索1002 Fire Net1004 Anagrams by Stack1005 Jugs1008 Gnome Tetravex1091 Knight ...

  7. 转载:poj题目分类(侵删)

    转载:from: POJ:http://blog.csdn.net/qq_28236309/article/details/47818407 按照ac的代码长度分类(主要参考最短代码和自己写的代码)  ...

  8. POJ 3370. Halloween treats 抽屉原理 / 鸽巢原理

    Halloween treats Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 7644   Accepted: 2798 ...

  9. POJ 2356. Find a multiple 抽屉原理 / 鸽巢原理

    Find a multiple Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7192   Accepted: 3138   ...

随机推荐

  1. 2081.09.22 Kuma(非旋treap)

    描述 有N张卡片,编号从0到n-1, 刚开始从0到n-1按顺序排好. 现有一个操作, 对于p. l,表示从第p张卡片之后的l张卡片拿到 最前面. 例如n=7的时候, 刚开始卡片序列为0 1 2 3 4 ...

  2. Ubuntu 16.04安装MySQL及遇到的问题解决方案

    使用以下命令即可进行MySQL安装: sudo apt-get install mysql-server 上述命令会安装以下包: apparmor mysql-client-5.7 mysql-com ...

  3. 如何用命令行将我的Phonegap环境更新到最新版本?

    从npm安装的Phonegap(version > 3.0),更新命令如下 npm update -g phonegap 检查当前本机环境的最新版本 phonegap -v 检查npm的最新ph ...

  4. word中添加引文操作

    word中添加引文操作 转化为pdf的时候,可以通过引文处进行ctrl + 左键点击,挑战到相应的后文中的参考引文位置. 1.在文章末尾添加如下内容,并在他的下面添加一条被引文的格式

  5. 深入理解BS结构应用程序

    随着学习的深入,和编程经验的丰富,对BS应用程序有一些认识. 在一些讨论软件技术的QQ群里,或一些社区.BBS中,经常会有一些初学者会犯一些认知性的错误.比如经常会有一些朋友提这样的一些问题:“我怎么 ...

  6. express 阮一峰的博客

    http://javascript.ruanyifeng.com/nodejs/express.html next没怎么用过... 一个不进行任何操作.只传递request对象的中间件 functio ...

  7. node API assert

    1.assert.throws(block, [error], [message]): assert.throws( function(){ throw new Error('wrong'); }, ...

  8. Spring Boot 2 实践记录之 使用 Powermock、Mockito 对 UUID 进行 mock 单元测试

    由于注册时,需要对输入的密码进行加密,使用到了 UUID.sha1.md 等算法.在单元测试时,使用到了 Powermock,记录如下. 先看下加密算法: import org.apache.comm ...

  9. 设计模式之代理模式(Proxy Pattern)_远程代理解析

    一.什么是代理模式? 顾名思义,代理就是第三方,比如明星的经纪人,明星的事务都交给经纪人来处理,明星只要告诉经纪人去做什么,经纪人自然会想办法去做,做完之后再把结果告诉明星就好了 本来是调用者与被调用 ...

  10. Microsoft Sql Server 2016安装在CentOS7下

    安装过程 如何安装直接参考这个文章:安装sql server 整个安装过程非常简单. 上面的文档里是通过 sudo 命令,用root身份来执行,不过这里为了简单,就用root账号来安装的. (1)下载 ...