I think you're right about the UI of this. Explore is defined as "draw
X, keep Y", and X and Y are independent variables. So, unlike
discarding to (e.g.) develop, when you discard Z, where Z is the cost,
here you should be choosing Y cards, not X-Y.
For what it's worth, on big explores I tend to discard the cards in
smaller batches, throwing away first the ones I most obviously don't
want, until I whittle it down to something manageable. But your
proposed solution makes a lot more sense.