HDU 2085 核反应堆
地址:http://acm.hdu.edu.cn/showproblem.php?pid=2085
此题找出关系即可
设n微秒时a( n ) 为高能粒子个数,b ( n )为低能粒子个数;
经分析可得 a ( n ) = 3 * a( n - 1 ) + 2 * b ( n - 1 ), b ( n ) = a ( n - 1 ) + b ( n - 1 );
然后直接打表即可,还有要注意要用long long 型存储
1 #include<stdio.h> 2 #include<stdlib.h> 3 long long sum[35][2]={1,0}; 4 int main() 5 { 6 int i,n; 7 for(i=1;i<=33;i++) 8 { 9 sum[i][0]=sum[i-1][0]*3+sum[i-1][1]*2; 10 sum[i][1]=sum[i-1][0]+sum[i-1][1]; 11 } 12 while(~scanf("%d",&n)&&n!=-1) 13 printf("%I64d, %I64d\n",sum[n][0],sum[n][1]); 14 return 0; 15 } 16 17