The problem as stated in the title is taken from "Putnam and beyond". Below is the problem as stated in the book:
Every point of the three-dimensional space is coloured red, green, or blue. Prove that one of the colours attains all distances, meaning that any positive real number represents the distance between two points of this colour.
In the following I present my "solution" to the problem. It differs from the textbook solution, so I am unsure if it is correct or not. I would be grateful if any of you could confirm that it is correct or else show me where my argument breaks down.
Assume the contrary is true. Let $r,g$ and $b$ be the number of red, green and blue points respectively and let $r \geq g \geq b$ without loss of generality. By assumption some distance $d$ exists, which no two red points are apart. Now consider all spheres with red points at their centre and of radius $d$. As the centre red point of each sphere is a distance $d$ from all points on the spheres surface, no points on the surface can be red and hence must be blue or green. This implies that the number of green points $g$ or the number of blue points $b$ must be greater than the number of red points $r$. But this contradicts our assumption $r \geq g \geq b$ and therefore we conclude that no such distance $d$ can exist. My argument is concluded.
The only issue that I would see with my above reasoning is that the quantities ( at least two of them, without the problem becoming trivial) $r,g$ and $b$ are infinite, so I may run into countability arguments.
Thank you for any help!
(note: I am aware of the textbook solution. Here I am interested in seeing whether my own solution makes any sense)