A may be over simplifying or maybe over complexing but if you have one activity with 10 participants it can be hard to do, If you have 10 activities you can have 10 separate outcomes and make this work easily. We had a similar sort of arrangement where we would send back and forth between two activities. You can do this all in one workflow.
But an alternative might be something like this
You can have an alternate workflow that assigns the task to originator for rework. and have the outcome of that task an activity assigned to the person who rejected
Now in your primary workflow you have one activity with 10 participant. In the form you have rules on workflow submit. Just add a rule under the activity when the drop down list = reject start the alternate workflow (sending in the originator and person who rejected). In the alternate workflow when the originator resolves it goes back to the person who rejected. Create a loop here by having two outcomes on the person who rejected "Complete" and "return".
Another option might be some kind of loop and the reject action would update a value that the loop checked for and assigned a task.
And one more alternative would be to wait until all are 10 completed and if any 1 is rejected then assign a task to the originator. Make the rejecter provide comments to the originator and show these when the rework activity is opened.
I hope his is in some way helpful