To best serve the interests of Yahoo searchers we should be displaying site A, not site B. I think that's pretty obvious. There's no reason for us to reward site B for being less valuable to web searchers but being smarter at breaking the rules.
Mike, this can be done by a better algo, not a permanent penalty. The difference? The latter is a "death sentence" that is simply unfair.
The real solution for Yahoo is develop a better algo that serves the searchers better and at the same time is fair to webmasters.