This doesn't work. If you know how many coins an output address is waiting to receive, all you need to do is look at which input address is submitting that many coins, and you have a matching.
Of course, people might contribute too many recipient addresses trying to get free money, but this can never work - the transaction would be quickly aborted.