Given a list of $m$ quantum states $$|\phi_0\rangle, |\phi_1\rangle, ... |\phi_{m-1}\rangle$$
each on $n$ qubits, with unitaries to prepare these ($U_0, U_1, ...$), I'd like to prepare a superposition of these states weighted by their overlap with another quantum state ${|\psi\rangle}$, such that the resultant state is:
$$ \frac{1}{\sum_i |\langle \psi | \phi_i \rangle|^2} \sum_i |\langle \psi | \phi_i \rangle| | \phi_i \rangle $$
Is there a simple method to prepare such a state where the postselection cost is not exponential in $n$ or $m$?
I've looked at arXiv:1401.2142, but this requires amplitude estimation which I'd like to avoid.