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

            輸入一個(gè)棋盤(pán) ( p × q ),從任意點(diǎn)開(kāi)始,每次走日子格,求能走遍每個(gè)點(diǎn)的序列,以Sample中給出的樣式按字典序輸出,如果得不到這樣的序列輸出impossible

            由于要按字典序輸出,所以?xún)?yōu)先訪(fǎng)問(wèn)坐標(biāo)較小的點(diǎn),第一次得到的序列就是所求結(jié)果

            #include <iostream>
            #include <cstdio>
            #include <cstring>
            #include <vector>
             
            using namespace std;
             
            int const maxn = 30;
             
            bool vis[maxn][maxn];
            int p, q;
            bool flag = false;
             
            int const steps[8][2= { { -1-2 }, { 1-2 }, { -2-1 }, { 2-1 }, { -21 }, { 21 }, { -12 }, { 12 } };
             
            typedef struct node
            {
                int x;
                int y;
            }coordinate;
             
            bool judge()
            {
                forint i = 0; i < p; i++ )
                    forint j = 0; j < q; j++ )
                        if!vis[i][j] )
                            return false;
                return true;
            }
             
            vector<coordinate> path;
             
            void dfs( int x, int y )
            {
                if( flag )
                    return;
                if( judge() && !flag ) {
                    printf( "A1" );
                    forint i = 0; i < path.size(); i++ ){
                        printf( "%c", path[i].y + 65 );
                        printf( "%d", path[i].x + 1 );
                    }
                    puts("");
                    flag = true;
                    return;
                }
                forint i = 0; i < 8; i++ ) {
                    int next_x = x + steps[i][0];
                    int next_y = y + steps[i][1];
                    if( next_x >= 0 && next_x < p && next_y >= 0 && next_y < q && !vis[next_x][next_y] ) {
                        coordinate tmp;
                        tmp.x = next_x;
                        tmp.y = next_y;
             
                        path.push_back( tmp );
                        vis[next_x][next_y] = 1;
             
                        dfs( next_x, next_y );
             
                        vis[next_x][next_y] = 0;
                        path.pop_back();
                    }
                }
             }
             
            int main()
            {
                int n; scanf( "%d"&n );
             
                forint i = 0; i < n; i++ ) {
                    scanf( "%d%d"&p, &q );
             
                    flag = false;
             
                    printf( "Scenario #%d:\n", i + 1 );
             
                    memset( vis, 0sizeof( vis ) );
             
                    path.clear();
                    vis[0][0= 1;
                    dfs( 00 );
                    if!flag )
                        printf( "impossible\n" );
                    puts("");
             
                }
                return 0;
            }
            posted on 2016-08-31 10:16 Vontroy 閱讀(181) 評(píng)論(0)  編輯 收藏 引用

            只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            伊人伊成久久人综合网777| 国产精品美女久久久免费 | 97久久国产综合精品女不卡| 日本亚洲色大成网站WWW久久| 亚洲国产精品无码久久久蜜芽| 国内精品伊人久久久久| 日日狠狠久久偷偷色综合0| 亚洲va中文字幕无码久久| 久久中文字幕一区二区| 欧美日韩精品久久久久| 99久久综合狠狠综合久久止| 一级a性色生活片久久无少妇一级婬片免费放| 久久乐国产综合亚洲精品| 品成人欧美大片久久国产欧美...| 97精品国产97久久久久久免费| 99久久国产热无码精品免费久久久久 | 蜜臀av性久久久久蜜臀aⅴ麻豆| 91精品国产综合久久四虎久久无码一级| 超级97碰碰碰碰久久久久最新| 韩国三级大全久久网站| 性做久久久久久久| 国产亚洲美女精品久久久2020| 久久久中文字幕日本| 国产ww久久久久久久久久| .精品久久久麻豆国产精品| 99久久国产亚洲综合精品| 青春久久| 久久中文字幕无码专区| 国产精品欧美亚洲韩国日本久久 | 久久中文字幕人妻熟av女| 久久国产成人| 久久久久久久综合综合狠狠| 久久免费高清视频| 久久96国产精品久久久| 国产精品美女久久久m| 国产成人久久精品一区二区三区| 97精品依人久久久大香线蕉97 | 91精品国产综合久久久久久| 久久精品无码一区二区无码| 精品久久久久香蕉网| 91秦先生久久久久久久|