吃巧克力
Posted rabbit1103
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了吃巧克力相关的知识,希望对你有一定的参考价值。
问题描述
输入格式
输出格式
样例输入
4
样例输出
5
题解
萌新一天可以吃一块或两块巧克力,问萌新吃完N块巧克力的方案数
设f[i]表示吃完n块巧克力的方案数
由题干知 f[1]=1, f[2]=2
对于i>2,假设萌新今天吃完了i块巧克力,并且已经算出f[1]到f[i-1]的值
如果今天萌新吃一块巧克力,那么到昨天为止一共吃了i-1块巧克力,有f[i-1]种方案
如果今天萌新吃两块巧克力,那么到昨天为止一共吃了i-2块巧克力,有f[i-2]种方案
所以今天吃完i块巧克力的方案数为两种情况的方案数之和,即f[i]=f[i-1]+f[i-2]
1 #include <stdio.h> 2 3 int f[50]; 4 int Func(int n) 5 { 6 f[1]=1; f[2]=2; 7 int i; 8 for (i=3;i<=n;i++) 9 f[i]=f[i-1]+f[i-2]; 10 return f[n]; 11 } 12 13 int main( ) 14 { 15 int n; 16 scanf("%d",&n); 17 printf("%d ",Func(n)); 18 return 0; 19 }
以上是关于吃巧克力的主要内容,如果未能解决你的问题,请参考以下文章