Hi,

This is my own personal opinion: books, classes, even solving past
problems, will all show you a bunch of useful techniques, algorithms,
theorems, coding tips. The problem solving is the art part. Your brain
catches some patterns from having solved many problems before, or thinking
about similar situations. It's the same as how you learned how to multiply.
You definitely never trained in all possible 3 digit by 3 digit
multiplications: you did a few of those, and your awesome brain generalized
to the rest. Plus, you learned some general rules that guide you when you
are doing a new one. And then, you learned somehow similar rules for
adding, and then doing gcd, and etc, and your brain gets really good at
understanding following simple rules.

Bottom line: If you do a LOT of problems, have a deep understanding of the
algorithms, theorems and techniques, your brain will pick up the usage
patterns when you see the next problem that needs them.

More to your point: if you are failing to solve problems because you didn't
know or were not familiarized with the algorithm or technique that was
used, then, go to books or classes or tutorials about it. If you know the
techniques but are not able to solve the problems and then it seems obvious
when reading the analysis, then you probably don't have AS much training
with the algorithm technique as you think. I would just get 10, 20 or even
50 problems that use it and solve them. After you are sick of using and
debugging your code for max flow, you will definitely want to use it and
will get it next time it appears on a contest.

Best,
Pablo

On Tue, May 2, 2017 at 7:38 AM, Luciano Quercia <[email protected]>
wrote:

> Yes, I know that constantly training is very helpful, but AFAYK, are there
> some books or articles or exercises that teach you how to think?
>
> To be clear, I'm not talking about typing fast or coding fast. I'm
> referring to the art of thinking and producing the algorithm starting from
> the problem.
> Something that teach you where to point your attention, to focus on edge
> cases, or to reverse a problem from another point of view... things like
> these.
>
> Do you know, e.g., if best codejammers of previous years have read TAOCP?
> Or other typical suggested books?
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google Code Jam" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit https://groups.google.com/d/
> msgid/google-code/3a54b40b-fdfe-4a90-a302-c5770c2f6e94%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google Code Jam" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-code/CANa5jcAa6mrkdAMdwcEWrTrSEDkMv0rheSeRHEJp37MS_eaUPg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to