We present a new method for taking advantage of the relative independence between parts of a single-player game. We describe an implementation for improving the search in a solitaire card game called Gaps. Considering the basic techniques, we show that a simple variant of Gaps can be solved by a straightforward depth-first search (DFS); turning to variants with a larger search space, we give an approximation of the winning chances using iterative sampling. Our new method was designed to make a complete search; it improves on DFS by grouping several positions in a block, and searching only on the boundaries of the blocks. A block is defined as a product of independent sequences. We describe precisely how to detect interactions between sequences and how to deal with them. The resulting algorithm may run ten times faster than DFS, depending on the degree of independence between the subgames.