题目链接: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. 【英语】Bingo口语笔记(65) - 我也是系列

  2. K2 Blackpearl开发技术要点(Part1)

    转:http://www.cnblogs.com/dannyli/archive/2012/09/14/2685260.html K2 Blackpearl开发技术要点(Part1) 预知后事如何,请 ...

  3. 使用模板时 error LNK2019: 无法解析的外部符号

    类模板是c++编译器指令 说明了如何生成类和成员函数 除非编译器实现了新的关键字export关键字 否则将模板成员函数放置在一个独立的实现文件中 将无法运行 因为模板不是函数 他们不能单独编译 模板必 ...

  4. 一段实现页面上的图片延时加载的js

    大家如果使用firebug去查看的话就会发现,当你滚动到相应的行时,当前行的图片才即时加载的,这样子的话页面在打开只加可视区域的图片,而其它隐藏的图片则不加载,一定程序上加快了页面加载的速度,对于比较 ...

  5. HDU5800 To My Girlfriend 背包计数dp

    分析:首先定义状态dp[i][j][s1][s2]代表前i个物品中,选若干个物品,总价值为j 其中s1个物品时必选,s2物品必不选的方案数 那么转移的时候可以考虑,第i个物品是可选可可不选的 dp[i ...

  6. 部署测试环境(ubuntu+mysql+tomcat)

    背景:入职新公司,广州这边没有测试开发环境,需要自己搭建一个:要求ubuntu+mysql+tomcat有具体版本要求:   2015/4/13 下载Ubuntu12.04 http://mirror ...

  7. ansible控制windows的官方翻译

    Ansible控制windows 1.    Windows下如何工作 在ansible控制linux的时候,用的是ssh的方式,在windows中,使用的是power shell,在客户端机器上也是 ...

  8. 传统企业,"哀兵必胜"的想法要不得

    [文/ 任英杰]同事在内网上发了一篇文章『哀兵必胜』,思量数日,作文应对.文中表达的积极精神让人敬佩,但背后似乎隐含着一股莫名的“情绪”.对行业大格局的基本看法会影响公司转型的成败,觉得还是有必要讨论 ...

  9. Sunrise Release Version History

    Sunrise Release Version History 1.4.1.0 1.1.0.0 1.0.1.0

  10. 记录一下ORACLE 10gR2的软件下载地址,备用。

    转载自:http://www.eygle.com/archives/2008/06/10gr2_download_link.html 记录一下ORACLE 10gR2的软件下载地址,备用. 下载OTN ...