青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

簡單的走迷宮,廣搜求最短路徑,要把坐標搞清楚。
#include<stdio.h>
#include
<string.h>
#include
<stdlib.h>
#define LEN 14
#define QLEN 100000
typedef 
struct 
{
    
int x;
    
int y;
    
int z;
}
Point;
typedef 
struct 
{
    
int f;
    
int r;
    Point 
*p;
}
Queue;
int d[6][3=
{
    
001,
    
00-1,
    
100,
    
-100,
    
010,
    
0-10
}
;
char sp[LEN][LEN][LEN];//space map
int rl[LEN][LEN][LEN];//road length
Point bg, ed;
int N;
void BFS()
{
    
int i, j;
    Point t;
    
int x, y, z;
    
int find = 0;
    Queue q;
    q.f 
= q.r = 0;
    q.p 
= (Point*)malloc(sizeof(Point) * QLEN);
    q.p[q.f] 
= bg;
    q.r
++;
    
while(q.f != q.r && !find)
    
{
        t 
= q.p[q.f];
        q.f 
= (q.f + 1% QLEN;//DeQueue
        for(i = 0; i < 6; i++)
        
{
            x 
= t.x + d[i][0];
            y 
= t.y + d[i][1];
            z 
= t.z + d[i][2];
            
if(sp[z][y][x] == 'O')//can walk
            {
                sp[z][y][x] 
= 'X';//change mp
                rl[z][y][x] = rl[t.z][t.y][t.x] + 1;//change rl
                q.p[q.r].x = x;//EnQueue
                q.p[q.r].y = y;
                q.p[q.r].z 
= z;
                q.r 
= (q.r + 1% QLEN;
            }

            
else if(sp[z][y][x] == 'E')
            
{
                rl[z][y][x] 
= rl[t.z][t.y][t.x] + 1;//change rl
                find = 1;
            }

        }

    }

    free(q.p);
}

int main()
{
    
int i, j, k, m;
    
char s1[LEN];
    
int gard = 100;
    
while(scanf("%s%d", s1, &N) == 2 && gard--)
    
{
        getchar();
        
for(i = 1; i <= N; i++)//read space map
            for(j = 1; j <= N; j++)
            
{
                
for(k = 1; k <= N; k++
                    sp[i][j][k] 
= getchar();
                getchar();
            }


        scanf(
"%d%d%d"&bg.x, &bg.y, &bg.z);//read point 
        scanf("%d%d%d"&ed.x, &ed.y, &ed.z);
        getchar();
        gets(s1);
//read END 
        
//getchar();
        bg.x += 1;
        bg.y 
+= 1;
        bg.z 
+= 1;
        ed.x 
+= 1;
        ed.y 
+= 1;
        ed.z 
+= 1;
        sp[bg.z][bg.y][bg.x] 
= 'B';
        sp[ed.z][ed.y][ed.x] 
= 'E';

        
for(i = 0; i <= N + 1; i++)//init map
            for(j = 0; j <= N + 1; j++)
            
{
                sp[i][j][
0= sp[i][j][N + 1= sp[N + 1][i][j] = '#';
                sp[
0][i][j] = sp[i][0][j] = sp[i][N +1][j] = '#'
            }


        
for(i = 0; i < LEN; i++)//init road length
            for(j = 0; j < LEN; j++)
                
for(k = 0; k < LEN; k++)
                    rl[i][j][k] 
= 0;
        BFS();
        
if(rl[ed.z][ed.y][ed.x] != 0)
            printf(
"%d %d\n", N, rl[ed.z][ed.y][ed.x]);
        
else if(bg.x == ed.x && bg.y == ed.y && bg.z == ed.z)
            printf(
"%d 0\n", N);
        
else 
            printf(
"NO ROUTE\n");
                    
    }
    
}

這道題交了很多遍一直WA,很是郁悶。剛開始以為自己的隊列沒有管理好,換成STL隊列問題依舊,又懷疑輸出格式的問題,修改后問題依舊。最后終于看到BFS()中有一個break(寫在了for循環里面),這樣是跳不出while的,用標志find代替break后果然AC!
想和寫之間的確有很大的差距,多些代碼才是硬道理。

scanf("%s",s1)讀取字符串時對前面的空白符有過濾作用,并且字符串中間的空白符將被認為字符串的結束標志,空白符不會被讀入
gets(s1)讀取字符串時對前面和中間的空白符都沒有過濾,只有換行符才會被認為是字符串的結束標志,該換行符不被認為是字符串的一部分


posted on 2012-03-04 12:54 小鼠標 閱讀(229) 評論(0)  編輯 收藏 引用
<2012年5月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

常用鏈接

隨筆分類(111)

隨筆檔案(127)

friends

最新評論

  • 1.?re: 線段樹
  • 是這個樣子的,所以在OJ有時候“卡住”了也不要太灰心,沒準真的不是自己的原因呢。
    加油,祝你好運啦!
  • --小鼠標
  • 2.?re: 線段樹
  • 對于編程競賽來說,Java所需時間一般為C/C++的兩倍。合理的競賽給Java的時間限制是給C/C++的兩倍。
  • --傷心的筆
  • 3.?re: poj1273--網絡流
  • 過來看看你。
  • --achiberx
  • 4.?re: (轉)ubuntu11.10無法啟動無線網絡的解決方法
  • 膜拜大神。。查了一個下午資料終于在這里解決了問題。。神牛說的區域賽難道是ACM區域賽。。?
  • --Hang
  • 5.?re: 快速排序、線性時間選擇
  • 博主,謝謝你的文章。你的方法可以很好的處理分區基準在數組中重復的情況,書上的方法遇到這種輸入會堆棧溢出。書上給出了解釋但給的方法貌似不簡潔。
  • --lsxqw2004

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲综合成人婷婷小说| 国产精品美女视频网站| 亚洲精品国产精品国自产观看浪潮| 亚洲视频成人| 一本色道久久综合亚洲91| 亚洲免费黄色| 夜夜精品视频| 亚洲另类视频| 亚洲免费一在线| 欧美一级夜夜爽| 久久久久久黄| 亚洲成人在线视频播放 | 久久久91精品国产| 性欧美xxxx视频在线观看| 欧美在线二区| 久久在线播放| 欧美电影免费| 欧美日韩亚洲一区三区| 国产精品一页| 亚洲国产精品久久久| av不卡在线看| 久久aⅴ乱码一区二区三区| 老色鬼精品视频在线观看播放| 欧美成人一区在线| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 米奇777超碰欧美日韩亚洲| 久久免费高清| 亚洲精品国产精品乱码不99| 在线亚洲一区| 久久久久久久999精品视频| 欧美日本精品| 尤物yw午夜国产精品视频| 一本色道久久| 麻豆国产精品va在线观看不卡| 亚洲精品一二| 免费看精品久久片| 国产日韩一区二区| 一区二区三区av| 欧美.www| 欧美在线一二三| 国产精品狼人久久影院观看方式| 91久久精品国产91久久性色tv| 欧美中在线观看| 日韩午夜视频在线观看| 久久中文字幕一区| 黄色免费成人| 久久精品视频99| 亚洲天堂激情| 欧美日韩另类综合| 亚洲精品在线一区二区| 免费亚洲电影| 久久久99久久精品女同性| 国产日韩av一区二区| 一区二区三区 在线观看视| 欧美国产日韩xxxxx| 欧美一区免费视频| 国产精品久久久久9999| 99一区二区| 亚洲国产精品999| 久久亚洲精品欧美| 一区视频在线看| 久久影院亚洲| 欧美中文字幕第一页| 国产视频欧美| 久久亚裔精品欧美| 欧美一区二区三区免费大片| 国产精品三上| 久久久久久久久一区二区| 亚洲免费一级电影| 国产欧美日韩激情| 欧美一区2区三区4区公司二百| 亚洲视频网在线直播| 欧美亚一区二区| 亚洲欧美日韩一区二区三区在线| 99www免费人成精品| 欧美日一区二区在线观看| 亚洲一区激情| 欧美一级专区| 在线播放亚洲| 亚洲国产精品ⅴa在线观看| 欧美日本高清| 亚洲欧美视频一区二区三区| 亚洲欧美国产高清| 韩国在线一区| 亚洲激情不卡| 国产精品成人在线| 国产精品青草久久| 亚洲国产精品成人精品| 欧美成人蜜桃| 国产精品白丝jk黑袜喷水| 欧美一区观看| 老色鬼精品视频在线观看播放| 亚洲欧洲久久| 亚洲欧美日本日韩| 91久久在线| 亚洲欧美一区二区三区久久| 国产亚洲午夜高清国产拍精品| 欧美a级大片| 国产精品久久一区二区三区| 老巨人导航500精品| 欧美三级网页| 久久中文字幕导航| 欧美三级欧美一级| 久久久亚洲午夜电影| 免费成人黄色av| 欧美亚洲视频一区二区| 另类综合日韩欧美亚洲| 亚洲女优在线| 欧美日韩亚洲国产精品| 欧美成人免费一级人片100| 国产精品日本精品| 99热在线精品观看| 亚洲剧情一区二区| 蜜桃精品久久久久久久免费影院| 久久高清国产| 国产精品久久久久影院色老大| 亚洲第一精品久久忘忧草社区| 国产日产精品一区二区三区四区的观看方式| 亚洲国产精品女人久久久| 国产一区日韩二区欧美三区| 一区二区三区视频在线播放| 亚洲精品在线观看免费| 久久综合影音| 免费视频一区| 亚洲高清一二三区| 欧美一二三区在线观看| 午夜在线视频一区二区区别| 欧美日本一区| 亚洲精品视频在线播放| 亚洲肉体裸体xxxx137| 久久性天堂网| 欧美第一黄色网| 亚洲国产日韩欧美在线99| 久久婷婷色综合| 亚洲国产精品久久久| 亚洲国产一区二区三区a毛片| 久久久久久自在自线| 久久久www免费人成黑人精品| 国产九九视频一区二区三区| 正在播放亚洲一区| 欧美一级艳片视频免费观看| 国产欧美日韩在线| 欧美中文字幕视频| 免费91麻豆精品国产自产在线观看| 极品裸体白嫩激情啪啪国产精品| 欧美综合国产| 欧美a级一区| 99视频热这里只有精品免费| 欧美日韩久久不卡| 中日韩美女免费视频网站在线观看| 亚洲欧美bt| 国产主播一区二区| 免费的成人av| 亚洲成色777777女色窝| 久久婷婷丁香| 亚洲国产精品成人va在线观看| 欧美成人免费视频| 99国产一区| 欧美中文字幕在线播放| 曰韩精品一区二区| 欧美日韩久久| 欧美在线你懂的| 亚洲国产成人精品久久| 亚洲天堂免费在线观看视频| 国产精品美腿一区在线看 | 一区二区三区四区五区精品| 欧美亚洲成人网| 午夜视频久久久| 亚洲国产精品va| 午夜日韩在线观看| 亚洲国产成人久久综合一区| 欧美另类高清视频在线| 亚洲在线观看免费| 欧美黄色aa电影| 欧美在线播放一区| 99国产精品久久久| 韩国女主播一区| 国产精品国产福利国产秒拍| 久久久久久有精品国产| 亚洲视频在线观看网站| 欧美成人久久| 久久久国产精品一区| 一区二区欧美视频| 精品动漫3d一区二区三区免费版| 欧美美女福利视频| 久久精品理论片| 亚洲一区二区三区四区中文| 欧美激情精品久久久久久免费印度 | 亚洲电影免费观看高清完整版| 亚洲一区国产视频| 亚洲精品乱码久久久久久日本蜜臀 | 亚洲网站在线观看| 亚洲国产经典视频| 美女精品在线| 久久国产综合精品| 午夜欧美不卡精品aaaaa| 一本大道久久a久久精品综合| 激情另类综合| 国产一级精品aaaaa看| 国产精品高精视频免费|