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

            PKU 2488 TOJ 1702 A Knight's Journey 解題

             

             1#include<stdio.h>
             2#include<string.h>
             3int P[8][2]={{-2,-1},{-2,1},{-1,-2},{-1,2},{1,-2},{1,2},{2,-1},{2,1}};
             4struct C{int r,l;};
             5C Q[30];
             6char use[30][30];
             7int p,q,K,ans,f;
             8void di(int a,int b)
             9{
            10    if(K==ans)f=1;
            11    if(f)return;
            12    int i,r,l;
            13    for(i=0;i<8;i++)
            14    {
            15        r=a+P[i][0];
            16        l=b+P[i][1];
            17        if(r>=1 && r<=&& l>=1 && l<=&& use[r][l])
            18        {
            19            K++;
            20            use[r][l]=0;Q[K].l=l;Q[K].r=r;
            21            //if(K==ans){f=1;return;}
            22            di(r,l);
            23            if(f)return;
            24            use[r][l]=1;
            25            K--;
            26        }

            27    }

            28            
            29}

            30int main()
            31{
            32    int i,Kase,l;
            33    scanf("%d",&Kase);
            34    l=0;
            35    while(l<Kase)
            36    {
            37        memset(use,1,sizeof(use));
            38        memset(Q,0,sizeof(Q));
            39        scanf("%d%d",&q,&p);
            40        ans=p*q;
            41        K=1;f=0;
            42        Q[K].l=1;Q[K].r=1;
            43        use[1][1]=0;
            44        di(1,1);
            45        printf("Scenario #%d:\n",++l);
            46        if(!f)printf("impossible\n\n");
            47        else
            48        {
            49            for(i=1;i<=ans;i++)printf("%c%c",Q[i].r+'A'-1,Q[i].l+'0');
            50            printf("\n\n");
            51        }

            52    }

            53    return 0
            54
            55}

            56

            深度優(yōu)先搜索。
            因?yàn)樾枰憷麄€(gè)棋盤有要求遍歷的順序字典序最小。
            那么可以確定深搜的順序就是從A1開始的。
            由于p*q<=26當(dāng)期中一個(gè)為2的時(shí)候另一個(gè)大于10的時(shí)候肯定是不能遍歷的。
            所以不需要考慮B11 B9等一類出現(xiàn)時(shí)候字典序的問題了

            posted on 2008-07-15 19:31 gong 閱讀(289) 評(píng)論(0)  編輯 收藏 引用


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


            <2008年7月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(6)

            隨筆檔案

            搜索

            積分與排名

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久亚洲国产午夜精品理论片| 人妻无码αv中文字幕久久琪琪布 人妻无码精品久久亚瑟影视 | 久久久久国产精品| 国产99久久久国产精品~~牛| 久久国产免费| 粉嫩小泬无遮挡久久久久久| 久久精品国产秦先生| 四虎国产精品成人免费久久| 无码专区久久综合久中文字幕 | 精品久久国产一区二区三区香蕉| 人妻无码精品久久亚瑟影视| 色成年激情久久综合| 亚洲中文字幕无码久久综合网| 国产亚洲成人久久| 精品国产VA久久久久久久冰| 亚洲а∨天堂久久精品9966| 久久精品18| 色综合久久久久| 久久99国产精品尤物| 精品久久久无码21p发布| 久久天天躁狠狠躁夜夜av浪潮| 一级做a爰片久久毛片人呢| 日韩久久久久久中文人妻| 99久久这里只精品国产免费| 久久久WWW成人免费精品| 色综合久久88色综合天天| 久久99精品久久久久久hb无码| 久久精品国产久精国产一老狼| 色播久久人人爽人人爽人人片aV| 精品视频久久久久| 狠狠色伊人久久精品综合网| 国产午夜电影久久| 久久综合久久伊人| 久久性生大片免费观看性| 久久久久久国产a免费观看不卡| 久久国产成人| 色婷婷久久久SWAG精品| 四虎国产精品成人免费久久| 欧美亚洲另类久久综合婷婷| 久久久久亚洲av综合波多野结衣| 97久久婷婷五月综合色d啪蜜芽|