linshi18
- #include<iostream>
- using namespace std;
- int n,m,k;
- #define max 100
- char mmap[max][max];
- int mmin;
- #define MIN(a,b) ((a)<(b)?(a):(b));
- int x1,x2,y1,y2;
- int mmde[4][2]={{0,-1},{1,0},{0,1},{-1,0}};
- int visited[max][max];
- void dfs(int x,int y,int sum){
- if(mmap[x][y]=='3'){
- mmin=MIN(sum,mmin);
- return; }
- else {
- int i;
- int mx,my;
- for(i=0;i<4;i++){
- mx=x+mmde[i][0];
- my=y+mmde[i][1];
- if(visited[mx][my]==1||mx<1||mx>n||my<1||my>m||(sum%k!=0&&mmap[mx][my]=='0'))
- {continue;}
- else if(abs(mx-x2)+abs(my-y2)+sum>mmin)continue;
- else
- {
- visited[mx][my]=1;
- dfs(mx,my,sum+1);
- visited[mx][my]=0; }
- }
- }
- }
- int main(){
- //scanf("%d%d%d",&n,&m,&k);
- while(cin>>n>>m>>k){
- int i,j;
- memset(visited,0,sizeof(visited));
- mmin=10000;
- for(i=1;i<=n;i++){
- for(j=1;j<=m;j++){
- cin>>mmap[i][j];
- if(mmap[i][j]=='1')
- {x1=i;y1=j;}
- else if(mmap[i][j]=='3')
- {x2=i;y2=j;}
- }
- }
- visited[x1][y1]=1;
- dfs(x1,y1,0);
- printf("%d\n",mmin);
- }
- }
版权声明:本文为博主原创文章,未经博主允许不得转载。
linshi18的更多相关文章
随机推荐
- 1025 反转链表(链表,reverse)
题目: 给定一个常数 K 以及一个单链表 L,请编写程序将 L 中每 K 个结点反转.例如:给定 L 为 1→2→3→4→5→6,K 为 3,则输出应该为 3→2→1→6→5→4:如果 K 为 4,则 ...
- jQuery,js如何扩展自定义方法
(jQuery.fn.myMethod=function () { alert('myMethod'); }) (function ($) { $.fn.extend({ myMethod : fun ...
- webSocket入门
原理:Pub-Sub(发布和订阅) 它适用于发送者将数据(发布者)发送给抽象数量的收件人(订阅者),而无需指定他们是谁. 1.是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议 ...
- 大数据入门第八天——MapReduce详解(三)MR的shuffer、combiner与Yarn集群分析
/mr的combiner /mr的排序 /mr的shuffle /mr与yarn /mr运行模式 /mr实现join /mr全局图 /mr的压缩 今日提纲 一.流量汇总排序的实现 1.需求 对日志数据 ...
- Quartz动态添加,修改,删除任务(暂停,任务状态,恢复,最近触发时间)
首页 博客 学院 下载 图文课 论坛 APP 问答 商城 VIP会员 活动 招聘 ITeye GitChat 写博客 小程序 消息 登录注册 关闭 quartz_Cron表达式一分钟教程 09-05 ...
- python并发编程之多进程理论知识
一 什么是进程 进程:正在进行的一个过程或者说一个任务.而负责执行任务则是cpu. 举例(单核+多道,实现多个进程的并发执行): egon在一个时间段内有很多任务要做:python备课的任务,写书的任 ...
- Python之函数的递归、匿名函数、内置函数
一.函数的递归 ''' 1 什么是函数递归 函数递归调用(是一种特殊的嵌套调用):在调用一个函数的过程中,又直接或间接地调用了该函数本身 递归必须要有两个明确的阶段: 递推:一层一层递归调用下去,强调 ...
- Spring Cloud(二):服务注册与发现 Eureka【Finchley 版】
Spring Cloud(二):服务注册与发现 Eureka[Finchley 版] 发表于 2018-04-15 | 更新于 2018-05-07 | 上一篇主要介绍了相关理论,这一篇开始我们 ...
- dom学习要点
Dom操作 1.文本内容操作 - innerText:操作文本 - innerHtml:操作全内容 //innerText标签: <div id='i2' ><a>土味程序员& ...
- Kubernetes探索学习004--深入Kubernetes的Pod
深入研究学习Pod 首先需要认识到Pod才是Kubernetes项目中最小的编排单位原子单位,凡是涉及到调度,网络,存储层面的,基本上都是Pod级别的!官方是用这样的语言来描述的: A Pod is ...