I suppose this best goes in the discussion rather than the solution space.
This question confuses me a bit, and I'll go into why and then hopefully someone can come along and clarify.
1) Why can't we just take the top 3 from the 6th race?
- Initial thinking: So of course we have 5 groups to race all 5 horses. Now in the 6th race we should be able to determine 1, 2, and 3rd.
- Second thought: I think I understand why this can't be done. This would clearly be inaccurate in the case that others in group 1 are faster than those in groups 2, 3, 4, and 5.
- Third thought: But then, if that is the case, what happens if all the horses in group 1 are faster than everyone in the other groups. Clearly 6 or 7 races would not find the 1, 2, and 3rd ranked horses
- Final thought: If I go back to the beginning and state that the 5 winners were the horses with the fastest times no matter what heat they were in, then 6 races would be the most needed to determine the fastest horse. Right?
Why not just 5 races
I don't know much about horse racing, but the problem, as stated seems to imply that we just need the three fastest horses - I don't see the actual point of pitting horses against each other to do that, since we can time the horses directly in each race. So, with five races with 5 mutually exclusive subsets of horses, we can find the time taken by all the horses, and pick the best three. This makes the reasonable assumption that the same track is used for all races. If this were a sport where the participants actually interacted (like tennis, or such), it may make sense to pair them off to determine the top three.