Dynamic Programming - Tiling Question
Well, the state should be dp[n], the optimal answer for some prefix of size n. Considering the different tiles, the transitions should be intuitive:
dp[n] = max(dp[n-2] + max(a[n], a[n-1]), dp[n-3] + max(a[n-1], a[n-2] + a[n]))
Of course, if any of the indices n-2, n-1, or n-3 are less than 0, then the involving terms should be omitted from the calculation. This is just a general representation of what the transition should be.