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

            Tauruser

            Enjoy Every Day
            posts - 34, comments - 95, trackbacks - 0, articles - 5
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理
            /////////////////////////////////////////////////////////////////////////////
            ///          算法與數據結構 Josephus 問題解決方案          ///
            ///                用方法二遞歸進行出列運算源程序             ///
            /////////////////////////////////////////////////////////////////////////////

            #include <iostream>
            using namespace std;

            int n,s,m,count;//全局變量;count用來控制當前出列表的位置
            int *seat,*outlist;//座位表與出列表
            void out(int n,int s,int m,int *seat,int *outlist);//遞歸函數
            int main()
            {
                
            //參數輸入
                count=0;
                cout
            <<"please input n:";
                cin
            >>n;
                cout
            <<"please input s:";
                cin
            >>s;
                cout
            <<"plesae input m:";
                cin
            >>m;
                
                
            //分配座位表與出列表空間
                seat=new int[n];
                outlist
            =new int[n];
                
                
            //將變量轉化為系統內部index base 0;
                s--;
                
                
            //對各座位上people的編號,出列表全清為零

                
            for(int i(0);i<n;i++)
                
            {
                    seat[i]
            =i+1;
                    outlist[i]
            =0;
                }

                
            //遞歸進行出列運算
                out(n,s,m,seat,outlist);
                
                
            //輸出出列運算結果
                cout<<"the out people list is:";

                
            for(int i=0;i<n;i++)
                    cout
            <<"P"<<outlist[i]<<" ";

                
            //釋放座位表與出列表空間
                delete []seat;
                delete []outlist;
                
            return 0;

            }


            void out(int n,int s,int m,int *seat,int *outlist)
            {
                
            if(count==n) return;
                
            else
                
            {
                    s
            --;
                    
            for(int i(0);i<m;i++)
                    
            {
                        s
            ++;
                        
            if(s==n) s=0;
                        
            if(seat[s]==0) i--;        
                    }

                    outlist[count]
            =seat[s];//送入出列表
                    count++;
                    seat[s]
            =0;//已經出列設置標志零
                    out(n,s+1,m,seat,outlist);
                }

            }
            久久影视国产亚洲| 少妇久久久久久被弄高潮| 久久综合视频网站| 亚洲国产另类久久久精品黑人| 91精品国产91久久久久福利| 久久99精品国产麻豆不卡| 久久午夜无码鲁丝片| 久久免费国产精品| 99久久国产综合精品网成人影院 | 国产一区二区精品久久岳| 亚洲中文久久精品无码ww16| 久久99精品国产麻豆蜜芽| 久久精品国产亚洲AV无码麻豆 | 性欧美大战久久久久久久久| 国产99久久九九精品无码| 久久丫精品国产亚洲av不卡 | 久久影视综合亚洲| 国产成人无码精品久久久久免费| 久久亚洲精品成人无码网站| 品成人欧美大片久久国产欧美| 日日躁夜夜躁狠狠久久AV| 一本一本久久a久久精品综合麻豆| 久久99国产精品久久久 | av无码久久久久不卡免费网站| 伊人久久大香线蕉综合Av| 久久夜色精品国产亚洲| 亚洲国产精品一区二区三区久久| 99久久人人爽亚洲精品美女| 99久久成人国产精品免费| 久久人人爽爽爽人久久久| 精品久久久久久无码专区不卡| 久久99久国产麻精品66| 精品国产99久久久久久麻豆| 狠狠综合久久综合88亚洲| 精品国产99久久久久久麻豆| 国内精品综合久久久40p| 97精品依人久久久大香线蕉97| 日韩乱码人妻无码中文字幕久久| 一本久久知道综合久久| 精品国产VA久久久久久久冰| 亚洲国产成人久久综合碰碰动漫3d |