<p>I'm a rising junior and I have no programming experience whatsoever. :O</p>
<p>
</p>
<p>The USACO website provides links to training materials. Start here:
[Programming</a> Contest](<a href=“http://www.uwp.edu/sws/usaco/]Programming”>http://www.uwp.edu/sws/usaco/)</p>
<p>It’s possible though it’d be pretty hard with zero programming experience. I have a friend who didn’t know what an array was during December, but became a finalist later that year, though that is obviously pretty rare.</p>
<p>Before you start the training pages though, you should learn at least the basics of programming since they assume that. A book from the library or some online tutorial should be good enough. And make sure you learn C, C++, Java, or Pascal since these are the only languages allowed.</p>
<p>I’ll put in a plug for C++ if you have any interest in science. This would be really useful to you in research, in a way that Java would not. Pascal might be useful in terms of structuring your thinking, but most programming these days for solving scientific problems (at least in the physics/chemistry areas) is done in C++, if not (horrors!) Fortran.</p>
<p>So, learning C++ would be well worthwhile, USACO or not.</p>
<p>I heard C++ is really difficult as a first language though.</p>
<p>C++ is not that difficult (and there are a wide variety of resources for self-study online, i.e., <a href=“http://www.learncpp.com%5B/url%5D”>www.learncpp.com</a>). You should also check out [Project</a> Euler](<a href=“http://www.projecteuler.net%5DProject”>http://www.projecteuler.net) for a constantly-updated list of math/computer science problems that can be solved with programming.</p>
<p>Thanks apple! I really appreciate your help. :)</p>