Sure! You would simply need to use data stored in your form to determine the initial visibility of the fields.
For example, you would setup your form to have an initial state where the check boxes for each field are visible and the fields are disabled (because the purpose here is to select the fields that are required to be filled by the next person in the workflow). You would also have an invisible check box somewhere named, say, "FillFields", which is "off" by default. Finally, you would have two buttons: The first would be a regular push button which, when clicked, would first set the value of the "FillFields" check box to "1" and then call the Click event of the second, invisible, button (a submit button set to submit the data) which would then cause the form to be submitted.
Note that you need to use the two-button approach so that you can set the value "FillFields" at the time when the form is submitted. Using the actual submit button's PreSubmit event is too late because the form's data has already been accumulated and stored at that point in time.
Once you have all that in place, you would just need some simple script in the Initialize event of all the check boxes and fields to check their initial values (which, once the form has been submitted by the first user, will now contain data). If a check box's initial value is "1" and "FillFields" is "1", then you enable its pertaining field; if "FillFields" is "1" and the check box's initial value is "0", you hide the field. Also, if the "FillFields" check box's initial value is "1", you hide all the other check boxes.
At this point, the user is left with only the required fields. They can then fill the fields and re-submit the form.
I've attached a sample which illustrates all these concepts to get you started.
Stefan
Adobe Systems