Thank you for your reply.
I tried the method you suggested, but there was one problem.
Once a user has changed a post from private to public or draft, there is no way for the user to manually make it private again.
If I allow users to unpublish after editing, then they cannot publish it themselves.
Is there a way to allow users to freely set their posts to public, private, or draft without admin involvement?
I would appreciate your response.