PrevNext

Resources: Learning to Code

Authors: Nathan Wang, Benjamin Qi

Resources for learning how to code.

Please let us know what works (or doesn't) for you!

General

Resources
Free courses for C++, Java, Python 3.
Free courses for C++, Java, Python 2. Some features require upgrading to Pro.
Free tutorials for C++, Java, Python 3.

Language references:

Also take a look at

C++

C++

Use one of the resources above or below (or find your own) to learn C++. If you use Sololearn, you don't have to complete the full course; we recommend you finish everything up to (and including) "Functions."

Resources
CPPGood introduction.
LCPPMore in-depth than the above. Detailed instructions for Visual Studio Community (Windows) and Code::Blocks (Windows, Linux) setup.
PAPSVisual Studio Code setup (Windows, Linux, Mac), examples, Kattis exercises

Pro Tip

Knowledge of pointers, structs and classes is useful but not required.

Java

Python

Python

Resources
PYLinks to wiki pages for installing and learning Python.

Module Progress:

Join the USACO Forum!

Stuck on a problem, or don't understand a module? Join the USACO Forum and get help from other competitive programmers!

Give Us Feedback on Resources: Learning to Code!

Leave suggestions for us by making a post on the USACO Forum! Ex: Unclear sections, mislabeled problems, etc.

PrevNext