Bitcoins aren't discreet items.
Example:
A single input (we'll call it input_A) of 5 BTC and another single input (we'll call it input_B) of 2 BTC can be included in a single transaction that has 2 outputs.
Lets call the first output output_A and say it has 3 BTC, and the second output output_B and say it also has 3 BTC. That leaves 1 BTC for the miner to accept as a transaction fee coinbase_A.
Since each of those inputs and outputs can be associated with a separate address, and the coinbase transaction can have MANY outputs, if you determine that input_B was blacklisted, how would you handle the addresses associated with each of:
- input_A
- output_A
- output_B
- coinbase_A