SRM484 div1 medium

解説見ました。
Login - TopCoder Wiki

class PuyoPuyo 
{
	public:
	int theCount(int L, int N) 
	{
		memset(DP,0,sizeof(DP));
		DP[0][0]=1;
		for(int i=0;i<N;i++)
		{
			DP[i+1][L-1]=(DP[i+1][L-1]+4*DP[i][0])%1000000007;
			for(int j=1;j<N;j++)
			{
				DP[i+1][j+L-1]=(DP[i+1][j+L-1]+3*DP[i][j])%1000000007;
				DP[i+1][j-1]=(DP[i+1][j-1]+DP[i][j])%1000000007;
			}
		}

		return DP[N][0];
	}
};