• <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>
            隨筆-11  評論-20  文章-0  trackbacks-0
            了解幻方


             1 #include <iostream>
             2 #include <vector>
             3 #include <iomanip>
             4 
             5 using namespace std;
             6 
             7 int main()
             8 {
             9     int num;
            10     cout << "請輸入幻方的階數(shù): ";
            11     cin >> num;
            12 
            13     if (num <= 2)
            14     {
            15         cout <<"2以下的階沒有幻方!" << endl;
            16         exit(0);
            17     }
            18 
            19     vector<vector<int> > MS(num);
            20     for (int i = 0; i != MS.size(); ++i)
            21         MS[i].resize(num);
            22     
            23     for (int i = 0; i != MS.size(); ++i)
            24         for (int j = 0; j != MS[i].size(); ++j)
            25             MS[i][j] = 0;
            26 
            27     int total = num * num;
            28     MS[0][num / 2= 1;
            29     int p = 0;
            30     int q = num / 2;
            31     for (int i = 2; i <= total; ++i)
            32     {
            33         if (0 == p && (num - 1== q)        
            34         {
            35             MS[p + 1][q] = i;
            36             ++p;
            37             continue;
            38         }
            39 
            40         if (p != 0 && q != (num - 1&& MS[p - 1][q + 1!= 0)
            41         {
            42             MS[p + 1][q] = i;
            43             ++p;
            44         }
            45         else if ( 0 == p && q < num - 1)
            46         {
            47             MS[num - 1][q + 1= i;
            48             p = num - 1;
            49             ++q;
            50         }
            51         else if (p > 0 && (num - 1== q)
            52         {
            53             MS[p - 1][0= i;
            54             --p;
            55             q = 0;
            56         }
            57         else if (p > 0 && q < num - 1)
            58         {
            59             MS[p - 1][q + 1= i;
            60             --p;
            61             ++q;
            62         }
            63         else
            64             cout << "Error!" << endl;
            65     }
            66 
            67     for (int i = 0; i != MS.size(); ++i)
            68     {
            69         for (int j = 0; j != MS[i].size(); ++j)
            70             cout << setw(3<< MS[i][j] << " ";
            71 
            72         cout << endl;
            73     }
            74 
            75     return 0;
            76 }


            posted on 2009-08-26 23:04 diwayou 閱讀(1484) 評論(1)  編輯 收藏 引用 所屬分類: 數(shù)學(xué)

            評論:
            # re: 計(jì)算幻方 2009-09-01 21:10 | lsp
            給點(diǎn)算法的注釋吧,要不然沒法看  回復(fù)  更多評論
              

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


            久久亚洲精品无码AV红樱桃| 色偷偷88888欧美精品久久久| 亚洲国产成人久久综合碰| 国产69精品久久久久99| 久久最新精品国产| 国产午夜精品久久久久九九| 国产精品一区二区久久精品无码| 日本久久久久亚洲中字幕| 久久综合狠狠综合久久综合88| 狠狠色婷婷久久综合频道日韩 | 久久久久亚洲AV片无码下载蜜桃| 国产精品久久久天天影视| 曰曰摸天天摸人人看久久久| 91亚洲国产成人久久精品网址| 久久电影网2021| 久久久久亚洲AV成人网人人网站| 狠狠狠色丁香婷婷综合久久俺| 久久精品国产99国产精品澳门| 久久国产精品久久| 99热都是精品久久久久久| 伊人久久国产免费观看视频 | 日本久久久久亚洲中字幕| 久久精品夜夜夜夜夜久久| 久久亚洲国产午夜精品理论片| 中文字幕一区二区三区久久网站 | 久久国产色av免费看| 久久精品欧美日韩精品| 国産精品久久久久久久| 三级三级久久三级久久| 久久99精品国产麻豆婷婷| 中文字幕无码久久精品青草 | 一本久道久久综合狠狠躁AV| 久久久亚洲欧洲日产国码二区| 伊人色综合久久天天| 中文字幕乱码久久午夜| 久久国产精品波多野结衣AV| 亚洲国产精品高清久久久| 99久久综合国产精品免费| 国产精品久久网| 国内精品人妻无码久久久影院导航| 7777久久亚洲中文字幕|