Code tests like these are here to stay for a while at least, anyway. They serve some sort of purpose, and, as a somewhat experienced programmer, sometimes it's fun to tackle an academic problem like these.
But, you go and practice your "kata", now what? You have some code, it does the job, but what will an interviewer actually think?
If you want some feedback on that, take your (working) code over to Code Review http://codereview.stackexchang... and have some objective folk critique it.
Practice without feedback is incomplete.