First, if the nodes have different values for mineemptyrounds, this suggests that this is being set in the runtime parameters for each node (which override the blockchain parameter mine-empty-rounds). While this is permitted, it is not particularly recommended, since if mining nodes have different settings for this, they will end up waiting for each other anyway.
In the case you have shown above, A and B will wait if there is nothing to mine, which means that C won't get a chance to apply its policy, since it can't mine to complete a round until A and B have done so.