• <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>
            隨筆-72  評論-126  文章-0  trackbacks-0
            矩陣運算。。很早的時候就下了一個課件,不過一直沒有看,因為不知道什么地方可以用(沒看當然不知道了)
            前幾天做了FOJ的月賽,有一道遞推的題
            賽后問了紀哥知道是矩陣的題目
            補習了一下,看了那個資料

            發現原來這么簡單,推推題原來都可以這樣做。。
            在HDOJ練習了幾道題目
            http://acm.hdu.edu.cn/showproblem.php?pid=1575
            這道是赤裸裸的矩陣二分
            http://acm.hdu.edu.cn/showproblem.php?pid=2256
            這道要巧妙的轉化后推公式
            再去解決FOJ那題。
            http://acm.fzu.edu.cn/problem.php?pid=1683
            Sn的公式很快就推出來了,用矩陣二分竟然超時。。。
            后來經指點是取模次數太多了,經過多次修改,終于過了。。

            又一想,當年菜鳥杯一道推推題目知道公式但是。怎么也寫不出
            http://acm.hdu.edu.cn/showproblem.php?pid=2604
            現在知道矩陣后回去秒殺了,呵呵,開心。。。
            http://acm.hdu.edu.cn/showproblem.php?pid=1757
            這道也是赤裸裸的矩陣
            http://acm.hdu.edu.cn/showproblem.php?pid=1588
            這題目比較惡心,不經init矩陣要自己推
            連右邊的數字都要自己推。。。推了一個晚上。。。結果效率還不是最高的,15MS
            http://acm.hdu.edu.cn/showproblem.php?pid=2276
            這道比賽時候看不出是矩陣。。。后來知道了很好做,因為上下相差一行,直接n^2的算法可以代替n^3,爽阿
            http://acm.fzu.edu.cn/problem.php?pid=1692
            還有這道,也是n^2的代替n^3防止超時
            //用n^2代替n^3的方法如下:
            //因為是特殊矩陣:初始矩陣上下只相差一列
            //所以可以計算第一行然后通過移位來得到全部矩陣

            Matr Mul(Matr a,Matr b)
            {
                
            int i,j,k;
                Matr c;
                
            for(j=0;j<n;j++)
                {
                    c.num[
            0][j] = 0;
                    
            for(k=0;k<n;k++)
                        c.num[
            0][j] += a.num[0][k]*b.num[k][j];
                    c.num[
            0][j] &= 1;
                }
                
            for(i=1;i<n;i++)
                {
                    c.num[i][
            0= c.num[i-1][n-1];
                    
            for(j=1;j<n;j++)
                        c.num[i][j] 
            = c.num[i-1][j-1];
                }
                
            return c;
            }


            http://acm.hdu.edu.cn/showproblem.php?pid=2294
            這道baidu杯過的最少的竟然也是用到矩陣,賽后看結題報告才知道,神奇

            分享一下我的矩陣模板吧
            struct Mat{
                
            int matrix[4][4];
            }init,unit;
            int mod;
            Mat Mul(Mat a,Mat b)//據說傳結構體比傳數組快
            {
                
            int i,j,k;
                Mat c;
                
            for(i=0;i<4;i++)
                    
            for(j=0;j<4;j++)
                    {
                        c.matrix[i][j] 
            = 0;
                        
            for(k=0;k<4;k++)
                            c.matrix[i][j] 
            += a.matrix[i][k]*b.matrix[k][j];
                        
            if(c.matrix[i][j]>=mod)
                            c.matrix[i][j]
            %=mod;
                    }
                
            return c;
            }
            Mat cal(
            int l)//l代表冪
            {
                Mat p,q;
                p 
            = unit;
                q 
            = init;
                
            while(l!=1)
                {
                    
            if(l&1)
                    {
                        l
            --;
                        p 
            = Mul(p,q);
                    }
                    
            else
                    {
                        l
            >>=1;
                        q 
            = Mul(q,q);
                    }
                }
                p 
            = Mul(p,q);
                
            return p;
            }

                
            for(i=0;i<4;i++)
                    
            for(j=0;j<4;j++)
                        unit.matrix[i][j] 
            = (i==j);
            posted on 2009-03-03 14:17 shǎ崽 閱讀(2293) 評論(8)  編輯 收藏 引用

            評論:
            # re: 神奇的matrix運算 2009-03-20 20:46 | future
            http://acm.fzu.edu.cn/problem.php?pid=1683
            Sn的公式很快就推出來了,。。。。”
            我這題用矩陣冪暴力做就TLE掉了,
            請問你sn公式是怎么推的!能否告知一下!謝謝~~  回復  更多評論
              
            # re: 神奇的matrix運算 2009-03-23 14:00 | shǎ崽
            @future


            A = [1 1 0 0]
            [0 3 2 7]
            [0 1 0 0]
            [0 0 1 0]

            B = [Sn]
            [Fn-1]
            [Fn-2]
            [Fn-3]  回復  更多評論
              
            # re: 神奇的matrix運算 2009-04-12 09:19 | ouye
            大牛
            http://acm.hdu.edu.cn/showproblem.php?pid=2256
            這道要巧妙的轉化后推公式

            后推公式是怎么推得?能否告知,thanks

              回復  更多評論
              
            # re: 神奇的matrix運算 2009-04-12 11:51 | matrix
            http://acm.hdu.edu.cn/showproblem.php?pid=2276
            這道比賽時候看不出是矩陣。。。后來知道了很好做,因為上下相差一行,直接n^2的算法可以代替n^3

            大牛, 可以具體解釋下嗎? 謝  回復  更多評論
              
            # re: 神奇的matrix運算 2009-04-13 00:09 | shǎ崽
            @matrix


            因為上下只相差一位
            所以可以用





            只算出第一行,然后接下來的根據移位得到

            。。。
            算了,這里格式不好,我貼到上邊去

              回復  更多評論
              
            # re: 神奇的matrix運算 2009-04-13 00:12 | shǎ崽
            @ouye


            num[1] = 10;
            num[2] = 98
            num[i] = num[i-1]*10 - num[i-2];

            然后num[i] - 1就是所求的答案  回復  更多評論
              
            # re: 神奇的matrix運算 2009-05-03 14:38 | phoenix
            能否提供下關于矩陣運算的課件給我,謝了~  回復  更多評論
              
            # re: 神奇的matrix運算 2009-05-08 21:39 | Wpl
            牛.......  回復  更多評論
              
            精品久久8x国产免费观看| 亚洲国产成人乱码精品女人久久久不卡 | 亚洲精品无码久久久久sm| 亚洲国产美女精品久久久久∴| 亚洲国产精品无码久久一线| 久久精品水蜜桃av综合天堂| 国内精品久久久久久久久| 亚洲精品无码专区久久久| aaa级精品久久久国产片| 久久久久18| 国产精品岛国久久久久| 日韩十八禁一区二区久久| 国产成人精品久久二区二区| 亚洲国产一成久久精品国产成人综合| 久久国产免费观看精品3| 精品久久人人爽天天玩人人妻| 伊人久久大香线蕉亚洲五月天| 99久久精品免费观看国产| 亚洲精品乱码久久久久久按摩| 久久精品国产亚洲AV不卡| 久久99国产综合精品| 久久久久久国产a免费观看黄色大片| 国产精品久久永久免费| 亚洲va中文字幕无码久久| 久久99这里只有精品国产| 久久精品国产99久久香蕉| 青青草原综合久久| 99久久婷婷国产综合亚洲| 无码人妻久久久一区二区三区| 久久久久无码中| 久久高潮一级毛片免费| 91精品国产综合久久香蕉 | 国内精品久久人妻互换| 久久亚洲熟女cc98cm| 无码人妻少妇久久中文字幕| 狠狠久久综合| 久久久久久国产a免费观看不卡| 国产精品永久久久久久久久久| 青青草原1769久久免费播放| 国产精品久久久久9999| 97久久综合精品久久久综合|