Modern experimental methods enable the creation of self-assembly building blocks with tunable interactions, but optimally exploiting this tunability for the self-assembly of desired structures remains an important challenge. Many studies of this inverse problem start with the so-called fully addressable limit, where every particle in a target structure is different. This leads to clear design principles that often result in high assembly yield, but it is not a scalable approach-at some point, one must grapple with "reusing" building blocks, which lowers the degree of addressability and may cause a multitude of off-target structures to form, complicating the design process. Here, we solve a key obstacle preventing robust inverse design in the "semiaddressable regime" by developing a highly efficient algorithm that enumerates all structures that can be formed from a given set of building blocks. By combining this with established partition-function-based yield calculations, we show that it is almost always possible to find economical semiaddressable designs where the entropic gain from reusing building blocks outweighs the presence of off-target structures and even increases the yield of the target. Thus, not only does our enumeration algorithm enable robust and scalable inverse design in the semiaddressable regime, our results demonstrate that it is possible to operate in this regime while maintaining the level of control often associated with full addressability.