Project Euler #115: Counting block combinations II