TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN : How to get good at topcoder/google code jam ?

9 点作者 ashish01超过 15 年前
I have been trying these competitions for sometime now but never got beyond the moderate level. Seeing code from people like ACRush and Petr makes me wonder if one can ever develop this talent or if one is just born with it.<p>And it not that I don't understand basic building blocks of these programs like dynamic programming or graph algorithms, but the way they get applied in the problem just bends my mind. So concretely what things can I do to make myself better at these compitions.<p>I do understand practice is fundamental. If right now I am from 0 to 10 I am because of that but anything apart from that like books, courses etc.

1 comment

hn超过 15 年前
Although you understood the importance of practice, I still want to reiterate it. Practice is the key! As far as I know, ACRush and Petr have many years of experience of practicing and competing in serious algorithmic contests such as IOI, ACM, etc. They have solved thousands of algorithmic problems and counting. Through that hard working process, they polish their problem solving and coding skill to the very high level as you know. I am not sure hard working is enough to reach the level of Petr's or ACRush's but I believe it can push you further than you think you can be. Here are my concrete suggestions:<p>1) Read relevant chapters in CLRS (Introduction to Algorithms, kind of bible textbook).<p>2) Try to solve as many problems as you can in:<p><a href="http://acm.uva.es/" rel="nofollow">http://acm.uva.es/</a> (mix, some hard)<p><a href="http://acm.timus.ru/" rel="nofollow">http://acm.timus.ru/</a> (mix, some hard)<p><a href="http://www.spoj.pl/" rel="nofollow">http://www.spoj.pl/</a> (mix, many hard)<p><a href="http://acm.sgu.ru/" rel="nofollow">http://acm.sgu.ru/</a> (mix, many hard)<p>Topcoder.com (of course)<p>3) Solve the problems first then read experts' code to learn coding skill from them. Petr publishes his own TC screencasts in his blog: <a href="http://petr-mitrichev.blogspot.com/" rel="nofollow">http://petr-mitrichev.blogspot.com/</a> You can learn a lot from watching them.<p>4) Practice consistently and never give up.<p>Good luck.