• <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ǎ崽 閱讀(2299) 評論(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
            牛.......  回復  更多評論
              
            久久被窝电影亚洲爽爽爽| 久久成人国产精品免费软件| 久久精品人人做人人爽97| 久久人妻少妇嫩草AV无码专区| 精品久久久久久久无码| 日韩精品久久久久久| 国产高潮国产高潮久久久91 | 久久久久人妻一区二区三区vr| 久久综合88熟人妻| 国产日韩久久久精品影院首页| 久久久久久久波多野结衣高潮| 精品久久久噜噜噜久久久| 青青草国产97免久久费观看| 欧洲精品久久久av无码电影| 国产亚洲精午夜久久久久久 | 精品国产乱码久久久久久浪潮 | 91久久精品91久久性色| 午夜视频久久久久一区 | 久久婷婷五月综合色高清| Xx性欧美肥妇精品久久久久久| 中文字幕人妻色偷偷久久| 久久精品国产国产精品四凭| 97久久香蕉国产线看观看| 2021国产精品久久精品| 久久国产影院| 99久久精品久久久久久清纯| 精品无码久久久久久午夜| 亚洲AV无码1区2区久久| 国内精品伊人久久久久777| 久久久久久国产a免费观看不卡| 国产精品免费福利久久| 97精品伊人久久大香线蕉| 模特私拍国产精品久久| 久久亚洲精品无码观看不卡| 国产女人aaa级久久久级| 精品一久久香蕉国产线看播放| 免费观看久久精彩视频| 中文精品久久久久国产网址| 久久久久四虎国产精品| 久久噜噜电影你懂的| 国产精品久久久99|