Lets extend your logic,

What’s the point of writing tests for 1–10 if you don’t have a solution for 20, What’s the point of writing tests for 100 if you don’t have the solution for 2000?

The concept of solving reduced problems is widely used in mathematical proofs, You can disagree with the methodology and use subjective words such as ‘good’ or ‘bad’, but the bottom line is that if I’d ask 100 average programmers to provide an algorithm for this problem, most of the responses would be incomplete solutions.

TDD rarely drives you into the most efficient, elegant solution, it does however drive you into the correct solution. Optimizing a correct solution is much simpler than theorizing a complete optimal solution in one sitting. You can use the old “just because you can’t doesn’t mean others can’t” statement, but the opposite is also true — Just because you can, does not mean others can. TDD provides confidence and structure for problems which *most* people cannot solve in one iteration. If you can do all of this and more, Kudos to you.