• <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>

            A Za, A Za, Fighting...

            堅信:勤能補拙

            PKU 1573 Robot Motion

            問題:
            http://poj.org/problem?id=1573

            思路:
            簡單題,純模擬...

            代碼:
             1 #include<stdio.h>
             2 #include<stdlib.h>
             3 #include<string.h>
             4 #define MAX_LEN 12
             5 #define is_valid(x, y) (x>=0 && x<R && y>=0 && y<C)
             6 char map[MAX_LEN][MAX_LEN];
             7 int steps[MAX_LEN][MAX_LEN];
             8 int R, C, entry;
             9 
            10 void
            11 solve()
            12 {
            13     char ch;
            14     int cx, cy, px, py;
            15     cx = px = 0;
            16     cy = py = entry-1;
            17     while(is_valid(cx, cy) && !steps[cx][cy]) {
            18         steps[cx][cy] = steps[px][py] + 1;
            19         ch = map[cx][cy];
            20         px = cx;
            21         py = cy;
            22         switch(ch) {
            23             case 'N':
            24                 cx = px-1;
            25                 cy = py;
            26                 break;
            27             case 'S':
            28                 cx = px+1;
            29                 cy = py;
            30                 break;
            31             case 'W':
            32                 cx = px;
            33                 cy = py-1;
            34                 break;
            35             case 'E':
            36                 cx = px;
            37                 cy = py+1;
            38                 break;
            39         }
            40     }
            41     if(!is_valid(cx, cy))
            42         printf("%d step(s) to exit\n", steps[px][py]);
            43     else if(steps[cx][cy])
            44         printf("%d step(s) before a loop of %d step(s)\n", steps[cx][cy]-1, steps[px][py]-steps[cx][cy]+1);
            45 }
            46 
            47 int
            48 main(int argc, char **argv)
            49 {
            50     int i;
            51     while(scanf("%d %d %d"&R, &C, &entry)!=EOF && R) {
            52         for(i=0; i<R; i++)
            53             scanf("%s", map[i]);
            54         memset(steps, 0sizeof(steps));
            55         solve();
            56     }
            57 }

            posted on 2010-10-17 11:12 simplyzhao 閱讀(136) 評論(0)  編輯 收藏 引用 所屬分類: G_其他

            導航

            <2011年7月>
            262728293012
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            統(tǒng)計

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            无码人妻少妇久久中文字幕| 99久久精品国产一区二区| 欧美亚洲国产精品久久高清| 久久受www免费人成_看片中文| 77777亚洲午夜久久多喷| 久久国产精品-国产精品| 国产精久久一区二区三区| 久久久午夜精品| 99久久www免费人成精品| 色播久久人人爽人人爽人人片AV| 国产综合久久久久| 中文字幕久久精品| 香蕉久久夜色精品国产小说| 三级三级久久三级久久| 久久青青国产| 91精品国产色综久久| 无码伊人66久久大杳蕉网站谷歌| 国产ww久久久久久久久久| 人妻无码αv中文字幕久久琪琪布| 国产成人综合久久久久久| 青草国产精品久久久久久| 亚洲精品视频久久久| 久久狠狠一本精品综合网| 99久久99这里只有免费的精品| 7777精品久久久大香线蕉| 一本色道久久88综合日韩精品 | 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 亚洲а∨天堂久久精品9966| 成人国内精品久久久久影院| 久久久久亚洲精品天堂| 国产欧美久久久精品影院| 久久综合久久鬼色| 午夜精品久久久久久久无码| 久久电影网| 久久精品国产精品亚洲下载| 99久久综合狠狠综合久久| 国产精品青草久久久久福利99| 99久久99久久精品国产片果冻| 777久久精品一区二区三区无码| 久久精品国产精品青草| 亚洲国产精品久久久久|