what is the problem with this code?
#include
#include<bits/stdc++.h>
using namespace std;
int dp[33];
int main()
{
int t;
cin>>t;
for(int i=0;i<t;i++)
{
int n;
cin>>n;
memset(dp,0,sizeof(dp));
//dp[0]=1;
dp[1]=1;
dp[2]=2;
for(int j=3;j<=n;j++)
{
dp[j]=dp[j-1]+(j-1)*dp[j-2];
// cout<<dp[i]<<"\n";
}
cout<<dp[n]<<"\n";
}
return 0 ;
}