Three, A and B are 999 km apart, and there are 1000 milestones along the way, each indicating the distance from the milestone to points A and B, such as (0,999), (1,998), (2,997) ..., (997,2), (998,1), (999,0). How many of these milestones have exactly two different digits on them?
Three, because the sum of two numbers on the same milestone is 999, the sum of the unit digits of the two numbers is 9, but 9 is odd, so the unit digits of the two numbers must be different, set them as $c$ and $9-c(c=0,1,2,3,4)$.
If only two different digits appear on a milestone, then they are $c$ and $9-c$.
The numbers formed by $c$ and 9-c within three digits have $2^{3}=8$.

And $c$ has 5 possibilities, so the milestones that only show two different digits, in total, have $8 \times 5=40$.