题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5335

     #include<stdio.h>
     #include<cstring>
     #include<cmath>
     #include<algorithm>
     using namespace std;
     ;
     char R[MAXN][MAXN];
     bool used[MAXN][MAXN];
     ], yy[];
     ] = { ,  ,  , -};
     ] = { , -,  ,  };
     int n,m;
     void bfs(){
         memset(used,false,sizeof(used));
         used[][] = true;
         , h = ;
         xx[p] = ;
         yy[p] = ;
         for(; p <= h; ++p)
             '){
                 ; i < ; ++i){
                     int X = xx[p]+mx[i];
                     int Y = yy[p]+my[i];
                      < X && X <= n &&  < Y && Y <= m && !used[X][Y]){
                         h++;
                         xx[h] = X;
                         yy[h] = Y;
                         used[X][Y] = true;
                     }
                 }
         }//注意区分XY
         ' && used[n][m]){
             printf("0\n");
             return;
         }
         ;
         ; i <= n; ++i)
             ; j <= m; ++j)
                 if(used[i][j]){
                     ma = max(ma,i+j);
                 }
         printf(");
         for( int i = ma; i < n+m; ++i){
             ';
             ; j <= n; ++j )
                  <= i-j && i-j <= m && used[j][i-j]){
                     mi = min(mi,R[j+][i-j]);
                     mi = min(mi,R[j][i-j+]);
                 }
             printf("%c",mi);
             ; j <= n; ++j )
                  <= i-j && i-j <= m && used[j][i-j]){
                     ][i-j] == mi)
                         used[j+][i-j] = true;
                     ] == mi)
                         used[j][i-j+] = true;
                 }
         }
         printf("\n");
     }
     int main()
     {
         freopen("../Ъ§Он/1009/1009.in", "r", stdin);
         freopen("a.out", "w", stdout);
         int T;
         scanf("%d",&T);
         while(T--){
             scanf("%d%d",&n,&m);
             ; i <= n; ++i )
                 scanf();
             ; i <= n+; ++i){
                 R[i][] = R[i][m+] = ';
             }
             ; i <= m+; ++i){
                 R[][i] = R[n+][i] = ';
             }
             bfs();
 //            for ( int i = 0; i <= n +1; i++){
 //                for( int j = 0; j <= m+1; j++)
 //                    printf("%c",R[i][j]);
 //                printf("\n");
 //            }
         }
         ;
     }

hdoj 5335 Walk Out的更多相关文章

  1. BFS+贪心 HDOJ 5335 Walk Out

    题目传送门 /* 题意:求从(1, 1)走到(n, m)的二进制路径值最小 BFS+贪心:按照标程的作法,首先BFS搜索所有相邻0的位置,直到1出现.接下去从最靠近终点的1开始, 每一次走一步,不走回 ...

  2. hdu 5335 Walk Out (搜索)

    题目链接: hdu 5335 Walk Out 题目描述: 有一个n*m由0 or 1组成的矩形,探险家要从(1,1)走到(n, m),可以向上下左右四个方向走,但是探险家就是不走寻常路,他想让他所走 ...

  3. 离散化+BFS HDOJ 4444 Walk

    题目传送门 /* 题意:问一个点到另一个点的最少转向次数. 坐标离散化+BFS:因为数据很大,先对坐标离散化后,三维(有方向的)BFS 关键理解坐标离散化,BFS部分可参考HDOJ_1728 */ # ...

  4. HDU 5335——Walk Out——————【贪心】

    Walk Out Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Su ...

  5. HDU 5335 Walk Out(多校)

    Walk Out Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Su ...

  6. hdu 5335 Walk Out (2015 Multi-University Training Contest 4)

    Walk Out                                                                         Time Limit: 2000/10 ...

  7. hdu 5335 Walk Out 搜索+贪心

    Walk Out Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total S ...

  8. 2015 Multi-University Training Contest 4 hdu 5335 Walk Out

    Walk Out Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Su ...

  9. HDOJ 5001 Walk

    概率DP dp[j][d] 表示不经过i点走d步到j的概率, dp[j][d]=sigma ( dp[k][d-1] * Probability ) ans = sigma ( dp[j][D] ) ...

随机推荐

  1. [反汇编练习] 160个CrackMe之022

    [反汇编练习] 160个CrackMe之022. 本系列文章的目的是从一个没有任何经验的新手的角度(其实就是我自己),一步步尝试将160个CrackMe全部破解,如果可以,通过任何方式写出一个类似于注 ...

  2. PHP中括号“{}”的3个作用

    1,将多个独立语句合并为一个复合语句,例如“if .... else ....”中推荐如此使用. 2,在变量的间接引用中进行定界,避免歧义.例如“${$my_var[8]}”与“${$my_var}[ ...

  3. Xdebug的安装与使用

    php下搭配使用xdebug是十分好的组合,用于php的调试工作,下面分别介绍之: 1 WINDOWS下的安装   下载站点http://www.xdebug.org/ 要确定使用一个跟你的PHP配合 ...

  4. mysql mac启动

    设置别名 alias mysql=/usr/local/mysql/bin/mysql alias mysqladmin=/usr/local/mysql/bin/mysqladmin 修改密码 su ...

  5. 中文分词系列(二) 基于双数组Tire树的AC自动机

    秉着能偷懒就偷懒的精神,关于AC自动机本来不想看的,但是HanLp的源码中用户自定义词典的识别是用的AC自动机实现的.唉-没办法,还是看看吧 AC自动机理论 Aho Corasick自动机,简称AC自 ...

  6. DESCryptoServiceProvider加密、解密

    .net名称空间System.Security.Cryptography下DESCryptoServiceProvider类为我们提供了加密和解密方法,我们只需少许代码便可实现加密和解密. 稍感不托的 ...

  7. IOS设计模式之三(适配器模式,观察者模式)

    本文原文请见:http://www.raywenderlich.com/46988/ios-design-patterns. 由 @krq_tiger(http://weibo.com/xmuzyq) ...

  8. redmine 2.5.2 安装后邮件无法发送

    找到redmine安装目录-apps->redmine->htdocs->conflg->configuration.yml email_delivery:    delive ...

  9. MySQL · 引擎特性 · InnoDB 崩溃恢复过程

    MySQL · 引擎特性 · InnoDB 崩溃恢复过程 在前面两期月报中,我们详细介绍了 InnoDB redo log 和 undo log 的相关知识,本文将介绍 InnoDB 在崩溃恢复时的主 ...

  10. CSS隐藏元素的几种妙法

    一说起CSS隐藏元素,我想大部分小伙伴们都会想到的第一种方法就是设置display为none.这是最为人所熟知也是最常用的方法.我相信还有不少人想到使用设置visibility为hidden来隐藏元素 ...