My question is, is there anyway to set up so that a customer can choose 20 items out of 60 choices for one order of a fixed bundle price?

Here is the flow I'm trying to build up:

1. A customer choose ONE bundle price out of options A ($50), B ($100), C ($200).

2. Based on the chosen bundle price, 60 choices are shown (different 60 choices are prepared for each of the options A, B, C)

3. The customer will pick 20 out of the 60 choices which are to be bundled.

4. Once 20 items are filled up, the customer checks out.
At the end, customer pays for the bundle price selected in (1).
To make my explanation clear, the check out price will only be affected by the choice made in (1).

I'm new to here, so please let me know if this thread should be posted elsewhere.
I searched everywhere but I couldn't find answer myself, hoping someone could help me.