• <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>
            心如止水
            Je n'ai pas le temps
            posts - 400,comments - 130,trackbacks - 0

            樣例中給出了n==4的情況,先考慮n==5的情況

            OOOOO*****__

            第一次移動->OOOO__****O*

            第二次移動->OOOO****__O*

            注意到前面的部分,轉(zhuǎn)換到了n==4的情況,所以想到一個分治算法。

            以下是我的代碼:

            #include<stdio.h>
            #include
            <string.h>
            long count=0;
            int n;
            void swap(char *a,char *b)
            {
                
            char t;
                t
            =*a;*a=*b;*b=t;
            }

            void div(char a[],int len)
            {
                
            char t;
                
            if(len>10)
                
            {
                   printf(
            "step %ld:%s\n",count,a);
                   swap(
            &a[len-1],&a[len/2-1]);
                   swap(
            &a[len-2],&a[len/2-2]);
                   count
            ++;
                   printf(
            "step %ld:%s\n",count,a);
                   swap(
            &a[len-3],&a[len/2-1]);
                   swap(
            &a[len-4],&a[len/2-2]);
                   count
            ++;
                   div(a,len
            -2);
                }

                
            else if(len==10)
                
            {
                   printf(
            "step %ld:%s\n",count,a);
                   swap(
            &a[9],&a[4]); swap(&a[8],&a[3]);
                   count
            ++;
                   printf(
            "step %ld:%s\n",count,a);
                   swap(
            &a[7],&a[3]); swap(&a[8],&a[4]);
                   count
            ++;
                   printf(
            "step %ld:%s\n",count,a);
                   swap(
            &a[7],&a[1]); swap(&a[8],&a[2]);
                   count
            ++;
                   printf(
            "step %ld:%s\n",count,a);
                   swap(
            &a[6],&a[1]); swap(&a[7],&a[2]);
                   count
            ++;
                   printf(
            "step %ld:%s\n",count,a);
                   swap(
            &a[6],&a[0]); swap(&a[7],&a[1]);
                   count
            ++;
                   printf(
            "step %ld:%s\n",count,a);
                }

            }

            int main()
            {
                
            int i,len;
                
            char a[205]={0};
                scanf(
            "%d",&n);
                len
            =2*n+2;
                
            for(i=0;i<len;i++)
                
            {
                   
            if(i<n)
                      a[i]
            ='O';
                   
            else if(i>=&& i<len-2)
                      a[i]
            ='*';
                   
            else
                      a[i]
            ='_';
                }

                div(a,len);
            // getchar();getchar();
            return 0;
            }

            posted on 2010-01-06 19:35 lee1r 閱讀(261) 評論(0)  編輯 收藏 引用 所屬分類: 題目分類:遞推/遞歸
            久久亚洲精品国产亚洲老地址| 久久精品国产福利国产琪琪 | 精品久久久久久久无码| 亚洲国产精品高清久久久| 久久久久久九九99精品| 伊人久久综合热线大杳蕉下载| 九九久久精品无码专区| 中文字幕乱码人妻无码久久| 久久精品国产亚洲AV影院| 99久久精品免费看国产一区二区三区| 亚洲成色www久久网站夜月| 亚洲狠狠综合久久| 天堂久久天堂AV色综合| 久久久久一级精品亚洲国产成人综合AV区 | 久久精品成人一区二区三区| 久久精品国产亚洲av麻豆小说 | 人妻无码久久一区二区三区免费| 青草影院天堂男人久久| 狠狠色丁香婷婷久久综合| 国产午夜精品理论片久久| 久久天天躁狠狠躁夜夜躁2014| 久久av免费天堂小草播放| 色偷偷88888欧美精品久久久| 午夜视频久久久久一区| 久久本道久久综合伊人| 久久国产精品一区二区| 伊人久久大香线蕉综合影院首页| 久久影视国产亚洲| 精品人妻伦九区久久AAA片69| 欧美久久综合性欧美| 99久久国产综合精品成人影院 | 狠狠色丁香久久综合五月| 久久人人妻人人爽人人爽| 久久精品中文无码资源站| 伊人久久一区二区三区无码| 久久一区二区免费播放| 日本亚洲色大成网站WWW久久| 色诱久久av| 亚洲AV日韩AV天堂久久| 久久精品国产亚洲AV麻豆网站| 99久久99久久|