2011-12-27 14:03:37
地址:http://acm.hdu.edu.cn/showproblem.php?pid=1165
题意:模拟图中给出的函数计算。
mark:直接记忆化肯定会爆栈。写几行就发现,m=0,1,2的规律了。m=3的时候直接爆。
代码:
# include <stdio.h>
int mem[25] = {5, 13} ;
int A(int m, int n)
{
if (m == 0) return n+1 ;
if (m == 1) return n+2 ;
if (m == 2) return n*2+3 ;
if (mem[n] != 0) return mem[n] ;
return mem[n] = A(m-1, A(m,n-1)) ;
}
int main ()
{
int m, n ;
while (~scanf ("%d%d", &m, &n))
printf ("%d\n", A(m,n)) ;
return 0 ;
}