递推公式的题目 与一步还是两步走台阶的问题有些相似 注意的是 这个只需要考虑在右侧增加长条就可以 比如是在右侧增加一个竖条 或者是在有些增加两个横条 也许一开始会考虑在右侧增加两个竖条 但是那种情况会被包含在第一个增加竖条的情况中
还有一个需要注意的地方时 vc中c语言中int为两个字节 long int 为四个字节 GCC中 long long int 为8个字节 在vc中可以用__int64 来定义长整型 输出的时候使用%I64d输出 ac代码如下
# include <stdio.h>
int main ()
{
__int64 a[51]={1,2,3};
int i,m;
for(i=2;i<51;i++)
{
a[i]=a[i-1]+a[i-2];
}
while(scanf("%d",&m)!=EOF)
printf("%I64d\n",a[m-1]);
return 0;
}