1212:LETTERS时间限制: 1000 ms         内存限制: 65536 KB
提交数: 9012     通过数: 3888
【题目描述】
给出一个roe×colroe×col的大写字母矩阵,一开始的位置为左上角,你可以向上下左右四个方向移动,并且不能移向曾经经过的字母。问最多可以经过几个字母。【输入】
第一行,输入字母矩阵行数RR和列数SS,1≤R,S≤201≤R,S≤20。接着输出RR行SS列字母矩阵。【输出】
最多能走过的不同字母的个数。【输入样例】
3 6
HFDFFB
AJHGDH
DGAGEH
【输出样例】
6
【来源】
# include<iostream>
# include<cstring>
using namespace std;
const int maxn=26;
int r,s;
int g[maxn][maxn];
string ss;
int Max;
bool vis_le[maxn];  //标记字母
bool vis_[maxn][maxn];//标记点
int dr[]={1,0,-1,0};
int dc[]={0,-1,0,1};
void search(int x,int y,int step)
{if(step>Max)Max=step; for(int i=0;i<4;i++){int newx=x+dr[i];int newy=y+dc[i];if(newx>=0&&newx<r&&newy>=0&&newy<s&&!vis_le[g[newx][newy]]&&!vis_[newx][newy]){vis_le[g[newx][newy]]=vis_[newx][newy]=1;search(newx,newy,step+1);vis_le[g[newx][newy]]=vis_[newx][newy]=0; }}}
int main()
{cin>>r>>s;for(int i=0;i<r;i++){cin>>ss;for(int j=0;j<ss.size();j++){g[i][j]=ss[j]-'A';}}memset(vis_le,0,sizeof(vis_le));memset(vis_,0,sizeof(vis_));vis_le[g[0][0]]=1;vis_[0][0]=1;  //站在第一个点去向四周做选择,并把第一个点死锁 search(0,0,1);   //因为第一个点有一个字母,故已访问一个字母,所以第三个参数为1 cout<<Max<<endl;return 0;
}

1212:LETTERS相关推荐

  1. 信息学奥赛一本通(1212:LETTERS)

    1212:LETTERS 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 18193     通过数: 8212 [题目描述] 给出一个roe×col的大写字母矩阵 ...

  2. 信息学奥数一本通 1212:LETTERS 搜索与回溯(耙耙)

    1212:LETTERS 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 11866 通过数: 5252 [题目描述] 给出一个roe×col的大写字母矩阵,一开始的位置为左上角, ...

  3. 搜索与回溯典型题目解析

    前排提示,本文收录的题目不是全部,只是抽取一些题目进行解析.因为笔者是在写完所有题之后在写此篇,推导过程中的量的名称可能与参考代码中不一样,还望谅解. 题目链接:信息学奥赛一本通(C++版)在线评测系 ...

  4. 帮忙选个号手机号码末四位:4739、3636,2577,8968,1717,2424,8886,5678,4619,5151,6226,1212,4321,2157,3445,觉得哪个好?

    帮忙选个号手机号码末四位:4739.3636,2577,8968,1717,2424,8886,5678, 4619,5151,6226,1212,4321,2157,3445,觉得哪个好? 刚才帮忙 ...

  5. 我的python之路(四):列表

    1.列表是什么 列表是由一系列按照特定顺序排列的元素组成,它可以创建包含字母表中的所有字母.数字0-9或所有家庭成员姓名的列表:也可以将任何东西加入列表中,其中的元素之间可以没有任何关系.鉴于列表通常 ...

  6. 【Python基础入门系列】第03天:Python 变量与数据类型

    这篇文章我们学习 Python 变量与数据类型 Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可 ...

  7. Python 中的反转字符串:reversed()、切片等

    摘要:以相反的顺序反转和处理字符串可能是编程中的一项常见任务.Python 提供了一组工具和技术,可以帮助您快速有效地执行字符串反转. 本文分享自华为云社区<Python 中的反转字符串:rev ...

  8. IEEE Signal Processing Letters

    原文链接:https://signalprocessingsociety.org/publications-resources/ieee-signal-processing-letters/infor ...

  9. IEEE Signal Processing Letters (SPL) 投稿须知

    IEEE Signal Processing Letters 原文链接:https://signalprocessingsociety.org/publications-resources/ieee- ...

  10. 【多实例学习】2017-PR-多实例学习:问题特征和应用的调查

    2017-PR-Multiple instance learning: A survey of problem characteristics and applications 多实例学习:问题特征和 ...

最新文章

  1. 【组队学习】【27期】青少年编程(Turtle)
  2. 人工智能领导世界走向何方?
  3. windows笔记-内存映射文件
  4. [YTU]_2618 ( B 求类中数据成员的最大值-类模板)
  5. 超图桌面版使用模板创建数据源
  6. PHD considerations
  7. wordpress 表格文字对齐_Word文字对齐还用空格键?OUT了,这3个文字对齐方式你值得拥有!...
  8. Docker入门系列之一:在一个Docker容器里运行指定的web应用
  9. 如何实现Android平台GB28181前端设备接入
  10. 童家旺:如何用分表存储来提高性能
  11. static_cast、dynamic_cast、reinterpret_cast、和const_cast
  12. 2021年最值得推荐的报表工具,无代码轻松实现可视化开发
  13. Hibernate查询技术(2)
  14. 刚开始学习.NET 怎么样能使自己学习的更快点啊?
  15. 《论文阅读》PV-RCNN: Point-Voxel Feature Set Abstraction for 3D Object Detection
  16. RPM软件包管理命令简介
  17. 图形界面 I: 图形界面的动画 (第三章)
  18. 数码摄影入门:焦距是什么?
  19. 04_Linux ARM架构-部署kibana服务-银河麒麟V10 操作系统
  20. URL中“#” “?” “”号的作用

热门文章

  1. 前端面试题(带答案)
  2. 【项目】数据仓库概述
  3. vue使用Swiper页面中有滚动条,为什么鼠标滚轮不起作用呢?
  4. excel中使用vlookup函数筛选时遇到#N/A 错误
  5. python求解一元二次方程考虑复数_Python学习笔记:求解一元二次方程
  6. U盘文件或目录损坏且无法读取修复方法?
  7. 学习笔记Android弹框material-dialogs
  8. 【算法随记二】线卷积积分及其在图像增强和特效方面的应用(一)
  9. 2018 阿里 声学模型 语言模型
  10. LaTeX 论文排版学习笔记(零基础)