Problem 1001 WAÄÄÁË£¬ÇóÖú

acm201308010418 | 2015-05-23 17:29:21Author
#include<stdio.h> #define LL __int64 #define MOD 1000000007 LL arr[1000001]; LL brr[1000000]; int main() { int T,N; scanf("%d",&T); int max=0; int index=0; for(; index<T; ++index){ scanf("%I64d",&brr[index]); if(max< brr[index]); max=brr[index]; } arr[1]=1;arr[2]=2;arr[3]=4; for( index= 4; index<=max; ++index){ arr[index]=arr[index-1]+(index-1)*arr[index-2]; arr[index]%=MOD; } for(index=0; index<T; ++index){ printf("Case #%d:\n%I64d\n",index+1, arr[brr[index]]); } return 0; }