For a Block Blast-style solver, you'll want to balance computation with good heuristic evaluation. A full backtracking search is often too slow for real-time decisions.
A more efficient approach is a beam search that explores only the top N promising placements for your sequence of blocks. You need a strong heuristic function to evaluate board states. Focus on:
Line Clear Potential: Prioritize placements that clear rows/columns immediately.
Smoothness: Minimize the height differences across the board to avoid unreachable gaps.
Hole Prevention: Penalize placements that create enclosed empty spaces.
Density: Keep the board as filled as possible from the bottom up.
By combining these into a weighted score and only deeply exploring the best candidates, you can get near-optimal performance without the computational cost. You can test these kinds of strategies in action using a block blast solver to see how different heuristics play out in real-time.