Here’s my writeup of a solution! It’s quite similar to @zzq’s solution for the case of integer weights.
The first thing to notice is that it doesn’t matter whether the weights are given in ounces or metric tons or anything else. Let’s pick nanograms so we can express all of them as integers! Ok, this is math, not reality, so even expressing the weights as numbers of atoms need not yield whole numbers. But if we prove it’s true when we round the weights to the nearest nanogram then we’re basically there. We’ll come back to the non-integer weights question.
Call a set of coins panpartitionable if, for every coin in the set, when you remove it there exists a partitioning into two equal-sized subsets of equal total weight. (Only odd-numbered sets of coins can be panpartitionable since you need the number of coins to be even when you remove one.) Next term: A set of coins is homogeneous if they all have identical weight.
So we’re proving that if a set of coins is panpartitionable then it’s homogeneous.
The case of integer weights
Changing the weight units is just saying we can multiply all the weights by any number. We can also add or subtract the same number from all the weights. Any two piles of coins that weigh the same will still weigh the same if every coin has a constant added to it. And two piles that don’t weigh the same still won’t. Neither panpartitionability nor homogeneity changes when we translate and scale the weights.
We’ll take advantage of that by first subtracting the weight of the lightest coin from all the coins. Of course if all the weights are the same then doing that makes them all weigh zero! So assume they’re not all the same and we’ll try to find a contradiction.
After adjusting the weights so the lightest one weighs zero, and assuming they don’t all weigh zero, suppose that all the weights are even. Then we can divide them all by 2. If they’re still all even, do it again until at least one is odd.
Interlude: A review of adding even and odd numbers
- An even number plus or minus an even number must be even.
- An even number plus or minus an odd number is odd.
- An odd number plus or minus an odd number is even.
(In other words, adding or subtracting an odd number toggles the oddness; adding or subtracting an even number doesn’t.)
Now we’ll show that the total weight of all the coins must be even… and also odd.
The first step: notice that if you remove any coin then the remaining total weight must be even. Why? Because if it’s odd then you can’t put the coins in two equal-weight piles. Whatever the weight of one pile, w, two of those piles must weigh 2w, which is even. (Twice any integer is even.)
Great, so remove the zero-weight coin. The remaining weight, which is to say the total weight, must be even.
Now remove an odd-weighted coin (the one that must exist unless all the weights are zero). The remaining weight must be even so add that odd number back and the total weight must be odd!
That’s our contradiction so our assumption that not all the coins weighed the same was wrong.
The case of rational weights
If the weights are all rational then just multiply them all by their least common denominator to make them all be integers. Done.
The case of irrational weights
[UPDATE: Thanks to Noah Walton, I now believe this part to be wrong!]
By the density of the rationals in the reals, if a weight isn’t rational we can pick a rational weight arbitrarily close to it. In less mathy terms: If the coins don’t each weigh a whole number of grams we can round up to the next higher number of grams and be off by less than a gram. And we can go ever finer – milligrams, micrograms, nanograms, picograms – and be off by as little as we like.
Back to the mathy version, we can pick an arbitrarily small positive epsilon and add amounts strictly less than epsilon to each coin to make them rational. Imagine augmenting all the coins with those tiny amounts.
The rational-valued augmented coins may not be panpartitionable but they are epsilon-panpartitionable. Namely, for any missing coin, however the original real-valued coins were partitioned, those same piles of now-augmented coins weigh within epsilon of each other. (Or within n/2 times epsilon if every coin in one pile was maximally augmented and every coin in the other was minimally augmented. But we can just start with an epsilon that’s n times smaller and, voila, the piles are within epsilon.)
Since those piles weigh within epsilon of each other for every positive epsilon, they must weigh the same. If they didn’t weigh the same then that would mean there was some positive delta that’s the difference between the piles’ weights. Pick epsilon smaller than that and we’d have a contradiction. (To spell out the contradiction: the difference in the piles’ weights is some positive number delta, but also strictly less than delta.)
So that means the rational-valued augmented coins are panpartitionable, which means they’re homogeneous. If the augmented coins are homogeneous then the irrationally-weighted coins are within epsilon of each other. (Recall that the tiny augmentations are all less than epsilon.)
And since they’re within epsilon for every positive epsilon, they must be homogeneous. Otherwise, similar to above, we could take epsilon to be smaller than the smallest difference between two of them and we’d have a contradiction.
So that’s it. Any real-valued coins that are panpartitionable must be homogeneous. Q.E.D.