• <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 閱讀(258) 評論(0)  編輯 收藏 引用 所屬分類: 題目分類:遞推/遞歸
            91亚洲国产成人久久精品网址 | 久久精品一本到99热免费| 无码日韩人妻精品久久蜜桃| 久久精品无码专区免费东京热| 国产精品久久99| 久久久久99精品成人片三人毛片 | 亚洲精品乱码久久久久久不卡| 久久久噜噜噜久久中文字幕色伊伊 | 99久久国语露脸精品国产| 精品人妻伦九区久久AAA片69| 久久久久国产精品嫩草影院| 久久99国产精品久久久| 国产精品久久久久蜜芽| 亚洲国产精品久久久久| 麻豆精品久久久久久久99蜜桃| 国产精品日韩深夜福利久久| 久久精品国产亚洲av影院| 亚洲欧美久久久久9999| 亚洲成人精品久久| 成人久久精品一区二区三区| 久久国产亚洲精品| 思思久久99热只有频精品66| 久久婷婷色综合一区二区| 久久国产免费观看精品| 日产精品久久久一区二区| 国产色综合久久无码有码| 噜噜噜色噜噜噜久久| 婷婷久久精品国产| 四虎国产精品成人免费久久| 久久久久亚洲AV综合波多野结衣| 久久精品嫩草影院| 久久中文字幕一区二区| 99久久精品毛片免费播放| 久久久久亚洲AV无码麻豆| 久久精品无码一区二区无码 | 亚洲国产综合久久天堂| 日韩精品无码久久一区二区三| 亚洲v国产v天堂a无码久久| 久久久国产精品| 欧美日韩精品久久久免费观看| 亚洲午夜久久久影院伊人|