Although, isn't this basically Newton's method of square roots? I don't recall how floating point implementations usually do it, but it's not too surprising that the performance is similar to the algebraic approach.
I agree with 15: I solved it pretty quickly and I like my solution, but what makes me really happy is that I'm pretty sure I couldn't have solved it a few years ago.
Also day 11 (Plutonian pebbles): it's such a simple problem, and part two is a perfect example of how and why to use dynamic programming. I've been encouraging everyone to try it.
Posted (in the daily thread)! I was initially considering brute force on outputs which are dependencies of the first incorrect bit (but not earlier bits), but in the end I just coded up the checks I was doing by hand.
For completeness' sake. I actually solved part 2 by looking at the structure with Graphviz and checking the input manually for errors. So the code here merely replicates the checks I was doing by hand.
Yeah, same here. Graphviz to get an overview (although I didn't actually need it in the end), plus some helper functions. I've got an idea for how to do it in code, though, when I get a moment.
That's a fun approach. The largest totally connected group will of course contain overlapping triples, so I think you're effectively doing the same thing as checking a node at a time, just more efficiently.
Many fond memories of using RISC OS as a kid. It's good to know that it's still alive!