青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

bon

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  46 Posts :: 0 Stories :: 12 Comments :: 0 Trackbacks

常用鏈接

留言簿(2)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

pku 3070
題目要求計算Fibonacci數列的第n項最后4位。因為n可以很大(0 ≤ n ≤ 1,000,000,000)。因此直接計算在時限內是不可能的(有多個case)。題目還給出了計算的方法:表示成矩陣連乘的形式為



這就給我們提供了快速算法,因為矩陣相乘滿足結合律。預先計算上面一個矩陣的2的冪次方,再將n表示成2進制。如當n=5時,只需計算一次矩陣乘法:1次方乘以4次方。當n=1000000000時最多只需計算29次矩陣乘法2^29 = 536870912),而且由于矩陣只是2階,計算量大大減少。
// pku 3070 求fabonacci數列的快速算法
/*

    化為以下矩陣連乘的形式
    |F(n+1) F(n)  | |1 1|(n)
    |F(n)   F(n-1)|=|1 0| 
    將n表示成2進制, 矩陣的二進制的積可以預先保存
    只需計算結果的后4位
*/
#include 
<iostream>

using namespace std;

int m[31][4]; // 保存29個2階矩陣
long fact[31];// 2的k次方

void cal()
{
    
// 單位矩陣
    
//m[0][0]=1,m[0][1]=0,m[0][2]=0,m[0][3]=1;
    m[1][0]=1,m[1][1]=1,m[1][2]=1,m[1][3]=0;
    
//fact[0]=1;
    fact[1]=1;
    
for(int i=2;i<=30;i++)
    {
        m[i][
0]=(m[i-1][0]*m[i-1][0]+m[i-1][1]*m[i-1][2])%10000;
        m[i][
1]=(m[i-1][0]*m[i-1][1]+m[i-1][1]*m[i-1][3])%10000;
        m[i][
2]=(m[i-1][2]*m[i-1][0]+m[i-1][3]*m[i-1][2])%10000;
        m[i][
3]=(m[i-1][2]*m[i-1][1]+m[i-1][3]*m[i-1][3])%10000;
        fact[i]
=2*fact[i-1];
    }
}

void solve(long n)
{
    
// 對n表示成2進制
    int e[31];
    memset(e,
0,sizeof(e));
    
int i,j;
    
for(i=30;i>=1;i--)
    {
        
if(n>=fact[i])
        {
            e[i]
=1;
            n
-=fact[i];
        }
    }
    
//for(i=1;i<=30;i++) printf("%d\n",e[i]);
    
//  結果矩陣,初始時為單位矩陣
    int res[4]={1,0,0,1},tmp[4];
    
for(i=1;i<=30;i++)
    {
        
if(e[i]!=0)
        {
            tmp[
0]=(res[0]*m[i][0]+res[1]*m[i][2])%10000;
            tmp[
1]=(res[0]*m[i][1]+res[1]*m[i][3])%10000;
            tmp[
2]=(res[2]*m[i][0]+res[3]*m[i][2])%10000;
            tmp[
3]=(res[2]*m[i][1]+res[3]*m[i][3])%10000;
            
for(j=0;j<4;j++) res[j]=tmp[j];
        }
    }
    printf(
"%d\n",res[1]);
}

int main()
{
    cal();
    
long n;
    
while(scanf("%ld",&n) && n>=0)
    {
        solve(n);
    }
    
return 1;
}
posted on 2008-02-29 00:04 bon 閱讀(734) 評論(2)  編輯 收藏 引用

Feedback

# re: pku 3070 2008-11-10 20:34 Zeor
方法不錯額~~~  回復  更多評論
  

# re: pku 3070 2009-04-16 11:37 bear
學習下,哇哈哈  回復  更多評論
  


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


Google PageRank 
Checker - Page Rank Calculator
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            午夜精品久久久久久久99热浪潮| 久久成人一区| 亚洲电影免费在线| 久久免费高清| 亚洲精品国产精品国产自| 亚洲欧洲日韩女同| 国产精品高清免费在线观看| 亚洲综合欧美日韩| 亚洲欧美影院| 亚洲国产精品久久| 亚洲精品乱码久久久久久蜜桃麻豆| 欧美激情在线狂野欧美精品| 亚洲一二三区视频在线观看| 亚洲欧美另类中文字幕| 在线观看视频一区二区| 亚洲精品影视| 国产啪精品视频| 亚洲国产精品小视频| 欧美体内she精视频| 久久久久网址| 欧美日韩高清一区| 久久国产精品免费一区| 免费在线观看成人av| 亚洲自拍都市欧美小说| 久久精品国产亚洲一区二区| 日韩亚洲精品电影| 欧美一区二区三区在线| 日韩一区二区精品| 欧美一级免费视频| 一本久久综合亚洲鲁鲁五月天| 亚洲男同1069视频| 99国产精品私拍| 欧美中文字幕在线| 亚洲男同1069视频| 欧美大胆a视频| 久久久999精品| 欧美午夜一区| 欧美激情在线有限公司| 国产人成精品一区二区三| 亚洲区一区二区三区| 精品福利免费观看| 午夜精品久久久久久久男人的天堂 | 亚洲欧美日韩国产成人精品影院| 久久超碰97人人做人人爱| 国产精品99久久久久久久vr| 狂野欧美激情性xxxx欧美| 久久本道综合色狠狠五月| 欧美日韩成人| 欧美激情第3页| 国产一区二区三区日韩| 亚洲在线免费观看| 亚洲尤物精选| 欧美视频一区二区三区…| 欧美福利视频| 亚洲成人在线免费| 久久精品综合一区| 久久久精品欧美丰满| 国产精品美女www爽爽爽| 亚洲美女黄网| 亚洲全部视频| 欧美 日韩 国产一区二区在线视频| 久久久久久穴| 国精品一区二区| 久久激情视频| 噜噜噜噜噜久久久久久91| 国产尤物精品| 欧美一区国产一区| 久久一区二区视频| 尹人成人综合网| 久久蜜桃香蕉精品一区二区三区| 久久一区视频| 亚洲国产国产亚洲一二三| 久久这里有精品15一区二区三区 | 1000部精品久久久久久久久 | 欧美第十八页| 亚洲欧洲美洲综合色网| 欧美粗暴jizz性欧美20| 亚洲欧洲一区二区三区| 一区二区欧美精品| 国产精品免费在线| 欧美一区二区三区久久精品| 久久精品网址| 亚洲欧洲日产国产网站| 欧美激情91| 亚洲一区视频在线| 久久久久久91香蕉国产| 亚洲国产成人av在线| 欧美日本一区二区三区| 一区二区三区欧美日韩| 欧美制服第一页| 亚洲第一中文字幕在线观看| 欧美激情中文不卡| 一区二区三区久久网| 久久国内精品视频| 亚洲国产专区| 国产精品久久久免费| 久久福利电影| 亚洲毛片播放| 久久久www| 99视频一区二区三区| 国产欧美日韩精品在线| 久久综合给合| 亚洲图片在线| 欧美激情一区二区三级高清视频| 中文国产成人精品久久一| 国产一区二区三区的电影| 欧美不卡福利| 欧美一区二区大片| 亚洲日本va午夜在线电影 | 亚洲电影第1页| 欧美亚洲不卡| 免费成人在线观看视频| 亚洲午夜久久久久久尤物 | 久久亚洲高清| 亚洲一区二区三区影院| 在线观看亚洲精品| 国产精品日韩在线观看| 欧美高清一区| 久久精品伊人| 午夜国产精品视频免费体验区| 亚洲第一区在线| 久久精品国产亚洲aⅴ| 一本色道久久精品| 亚洲国产一区二区a毛片| 国产精品揄拍500视频| 欧美精品国产精品日韩精品| 久久亚洲精品一区二区| 欧美一区二区日韩| 亚洲小说春色综合另类电影| 亚洲黄色av| 欧美夫妇交换俱乐部在线观看| 久久久久久97三级| 久久精品日产第一区二区| 亚洲综合国产| 亚洲在线视频网站| 一区二区三区国产精华| 亚洲人成啪啪网站| 在线日韩av| 亚洲大黄网站| 亚洲国产你懂的| 亚洲国产欧美一区| 亚洲国产一区二区三区在线播| 狠狠色狠色综合曰曰| 国产一区二区三区在线免费观看| 国产欧美日本| 黑人一区二区三区四区五区| 国产午夜精品理论片a级大结局| 国产精品区一区二区三区| 国产精品户外野外| 国产精品毛片va一区二区三区| 欧美性色aⅴ视频一区日韩精品| 欧美日韩免费在线观看| 国产精品白丝av嫩草影院| 国产精品成人一区二区| 国产精品扒开腿做爽爽爽视频| 国产精品成人在线观看| 国产乱肥老妇国产一区二 | 久久手机精品视频| 久久综合伊人77777麻豆| 蜜臀av在线播放一区二区三区| 美女国产精品| 欧美日韩一区二区三区四区五区 | 久久爱www久久做| 久久精品一区二区三区四区| 久久九九免费视频| 欧美成人视屏| 欧美色图一区二区三区| 国产精品视频yy9099| 一区在线电影| 在线综合亚洲| 久久精品日产第一区二区三区 | 亚洲午夜电影| 久久国产精品久久久久久电车| 蜜桃久久精品乱码一区二区| 欧美二区在线播放| 一区二区免费看| 久久久免费观看视频| 欧美日本精品| 国内成+人亚洲| 亚洲精品一区二区三区福利| 亚洲欧美国产毛片在线| 蜜臀av一级做a爰片久久| 亚洲三级免费观看| 久久av一区二区| 欧美成人第一页| 国产人久久人人人人爽| 亚洲精品中文字幕有码专区| 香蕉久久夜色| 亚洲人成网站999久久久综合| 亚洲免费在线看| 欧美日韩1080p| 伊人久久大香线蕉av超碰演员| 中文欧美在线视频| 蜜臀av国产精品久久久久| 亚洲图片欧美日产| 欧美国产精品久久| 曰韩精品一区二区| 久久国产精品黑丝| 一本一本大道香蕉久在线精品| 久久久久久久久久久久久9999|