Beijing wc2012 最多的方案

2021-08-13 16:18:28 字數 990 閱讀 7899

題目位址

題目大意:

第二關和很出名的斐波那契數列有關,地球上的oier都知道:f1=1, f2=2, fi = fi-1 + fi-2,每一項都可以稱為斐波那契數。現在給乙個正整數n,它可以寫成一些斐波那契數的和的形式。如果我們要求不同的方案中不能有相同的斐波那契數,那麼對乙個n最多可以寫出多少種方案呢?

做題思路:

這個題純看的題解,,有點規律性的東西,num[i]=1+num[i-2],每兩個斐波那契數,會增加一種表達方式,就可以對組成n的最原始的斐波那契數進行分解,dp[i][1]表示第i個斐波那契數選的種數,dp[i][0]表示第i個斐波那契數不選的情況數,從小到大dp就可以了

1      

3                 3=2+1

5                 5=3+2

8                 8=5+3=5+2+1

13              13=8+5=8+3+2

21              21=13+8=13+5+3=13+5+2+1

**:#include#define max 1000000000000000000

using namespace std;

long long f[100],n,dp[100][3],ans[100];

int main()

//f[++s]=0x3ffffffffff;

scanf("%lld",&n);

int k=1;

for(i=s;i>0,n>0;i--)

}dp[k-1][1]=1;dp[k-1][0]=(ans[k-1]-1)>>1;

for(i=k-2;i>=1;i--)

{dp[i][1]=dp[i+1][1]+dp[i+1][0];

dp[i][0]=dp[i+1][1]*((ans[i]-ans[i+1]-1)>>1)+dp[i+1][0]*((ans[i]-ans[i+1])>>1);

//cout<

2012,龍年展望

今天是新年裡的第一天上班,很多人都還沒有來,所以便有閒記下這段思考。不知不覺,工作已快6.7個年頭了,在it行業也算是老油條了,回顧過去,雖然也幹了不少事情,但是還缺乏規化,缺乏總結,很多技術也沒有深究下來,所以在新的一年裡,希望不要有這樣的遺憾,能夠到年底看到碩果。新年裡需要有新的規化,有全的,有...

2012暑假計畫

挺長時間沒有更新部落格了,主要是因為這段時間比較忙,學習方面都在學習一些新的知識,感覺沒有什麼可寫的。暑假開始了,極其喜歡自學的我準備度過乙個美妙的暑假。學習計畫如下 1.python的學習。由於在學習linux程式設計,寫了一些shell指令碼,我對指令碼也不陌生。最近感覺自己需要做一些跨平台的工...

騰訊2012實習

選擇d。迴圈佇列的front和rear必有乙個不指向實質元素,不然無法判斷佇列滿或空。c。是這樣的原理,磁碟會一直朝某個方向旋轉,不會因為處理資料而停止。本題要求順序處理r1到r10,起始位置在r1,一周是20ms,共10 個記錄,所以每個記錄的讀取時間為2ms。首先讀r1並處理r1,讀r1花2ms...