posts - 99,  comments - 8,  trackbacks - 0
这道题虽然求递推公式很简单,可是我却WA了几次:
1.递归问题中如果之直接用公式很容易栈溢出,用数组保留相应的值
2.由递归得到的最终结果很大所以在定义数据类型的时候要注意范围,否则正确的值
 1#include <stdio.h>
 2#include <stdlib.h>
 3int main ()
 4{
 5    int i , n;
 6    __int64 a[21];
 7    
 8    a[1= 0; a[2= 1
 9       
10    while ( scanf ("%d"&n) != EOF )
11    {
12          
13          for (int i = 3; i <= n; i ++)
14          {
15              a[i] = (i - 1)*(a[i - 1] + a[i - 2]);
16          }
17          
18          printf ("%I64d\n", a[n]);
19    }

20    //system ("pause");
21    return 0;
22}

23
posted on 2010-08-09 20:07 雪黛依梦 阅读(215) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


<2010年8月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
2930311234

常用链接

留言簿(4)

随笔分类

随笔档案

文章档案

搜索

  •  

最新评论

阅读排行榜

评论排行榜