• <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>
            posts - 43,  comments - 9,  trackbacks - 0
            http://acm.hdu.edu.cn/showproblem.php?pid=1005
            A number sequence is defined as follows:
            f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7.
            Given A, B, and n, you are to calculate the value of f(n).
            1 <= A, B <= 1000, 1 <= n <= 100,000,000

            解:
            f(n) = (A * f(n - 1) + B * f(n - 2)) %7
                  = (A * f(n - 1) %7 + B * f(n - 2) %7) %7
            所以對于給定的A和B,可以先打表,找出數(shù)列的循環(huán)部分. 鴿巢原理知,狀態(tài)總數(shù)不會超過7*7
            注意循環(huán)節(jié)不一定從f(3)開始...

             1#include <iostream>
             2using namespace std;
             3
             4int a,b,n,x,y,l,h,m[7][7],q[300];
             5int main(){
             6    while(scanf("%d%d%d",&a,&b,&n)!=EOF && (a||b||n)){
             7        memset(m, 0sizeof(m));
             8        q[1= q[2= 1;
             9        x = y = 1; l=3;
            10        while(m[x][y]==0)//該狀態(tài)還未經(jīng)歷過,則擴展
            11            q[l] = (a*x+b*y)%7;
            12            m[x][y] = l;
            13            y = x;
            14            x = q[l++];
            15        }

            16        //此時,q[1h-1]為前面的非循環(huán)部分
            17         //q[hl-1]為循環(huán)節(jié)
            18        h = m[x][y]; //循環(huán)節(jié)的起始位置
            19        if(n<h) printf("%d\n",q[n]);
            20        else printf("%d\n",q[((n-h)%(l-h))+h]);
            21    }

            22    return 0;
            23}

            posted on 2009-04-25 11:55 wolf5x 閱讀(910) 評論(0)  編輯 收藏 引用 所屬分類: acm_icpc
            <2009年7月>
            2829301234
            567891011
            12131415161718
            19202122232425
            2627282930311
            2345678

            "Do not spend all your time on training or studying - this way you will probably become very exhausted and unwilling to compete more. Whatever you do - have fun. Once you find programming is no fun anymore – drop it. Play soccer, find a girlfriend, study something not related to programming, just live a life - programming contests are only programming contests, and nothing more. Don't let them become your life - for your life is much more interesting and colorful." -- Petr

            留言簿(3)

            隨筆分類(59)

            隨筆檔案(43)

            cows

            搜索

            •  

            最新評論

            評論排行榜

            国产精品免费久久久久影院| 狠狠色婷婷久久综合频道日韩 | 亚洲国产精品无码久久青草| 久久久久久久波多野结衣高潮| 欧美一区二区三区久久综合 | 性高朝久久久久久久久久| 久久99精品久久久久婷婷| 久久精品亚洲福利| 国产成人AV综合久久| 久久久久se色偷偷亚洲精品av| 久久99精品久久久久久动态图| 久久天天躁狠狠躁夜夜av浪潮| 亚洲成人精品久久| 国产精品久久影院| 久久99精品久久久久婷婷| 亚洲国产香蕉人人爽成AV片久久| 久久亚洲国产成人精品性色| 伊人色综合久久| 国产99精品久久| 久久久精品人妻一区二区三区蜜桃 | 性做久久久久久免费观看| 99久久免费国产精精品| 综合久久一区二区三区 | 久久精品女人天堂AV麻| 久久精品国产亚洲精品2020| 亚洲国产综合久久天堂 | 亚洲综合婷婷久久| 精品一区二区久久| 精品久久久久久99人妻| 亚洲伊人久久成综合人影院 | 久久久久av无码免费网| 伊人久久无码精品中文字幕| 国产午夜精品久久久久九九| 77777亚洲午夜久久多喷| 热re99久久精品国99热| 国内精品久久久久影院优 | 国产精品久久久久影院嫩草| 久久精品国产福利国产秒| 久久99国产精品99久久| 久久精品九九亚洲精品天堂| 久久精品国产精品青草app|