Today's files are BIG. Consider a flash drive.




USACO Training

Code File

Template File

Do USACO Contests
Using Eclipse 3+. [pdf]

Discrete Mathematics
for Computer Science
at M.I.T.

Structure and Interpretation
of Computer Programs
at M.I.T.

Computing Competitions Help Us Learn To Fall!

Each month students may tackle a set of computing problems requiring the design and implementation of algorithms in a computing contest. The contest will run over the weekend from Friday afternoon until Tuesday morning. The computing problems will be drawn from monthly USACO [USA Computing Olympiad] contests and the single CCC [Canadian Computing Competition] which occurs near the end of February.

  • Collaboration during any contest is prohibited.
  • Any electronic or hard copy resource may be used in any USACO contest.
  • Any hard copy but no electronic resource may be used in any CCC contest.
  • Code lifted from elsewhere must be documented with reference to the source, such as an URL or book citation.
  • To earn assignment bonus marks:
    1. All source code must be printed and submitted by the end of Tuesday's class. Hint: Print each solution when it is completed.
    2. All source code must be copied to the Z: drive .
      1. Navigate to the folder entitled, "Friday Contests".
      2. Navigate to a folder containing the day's current date.
      3. Create a folder bearing the student's first and last names.
      4. Copy all files that were used &/or generated during the period.
    3. Bonus marks are distributed over all prior exercise assignments such to first raise as many assignment grades to 100% as possible and then, where it happens that all assignment grades reach 100%, to increase those assignment grades beyond 100% and thereby allowing the impact of assignment grades to continue to effectively increase the overall course grade. The overall course grade may increase to 100%. The highest course grade that will be reported is 100%.
Bonus marks for contest questions are awarded as follows.
Done by
Total Bonus
Per Question
Total Bonus Marks Awarded:6%

Legend Explaining Evaluation Criteria
attempt = Significant code that fails to solve the problem but does compile & execute <= 5 minutes.
effective= Code that correctly solves the problem & compiles & executes <= 5 minutes.
efficient = Code that is effective & compiles <= 30 seconds & runs <= 1½ seconds per test case.
computer = 700 MHz Duron
compiler = gcc version 3.4.2 20041017 (Red Hat 3.4.2-6.fc3) Java Sun 1.5.0

Your ability to rapidly solve the monthly contest problems will significantly improve after completing the following chapters on Recursion and Searching and Sorting as these chapters expose you to standard "repertoire" of algorithms.

You can view prior sections of a graduate course on algorithms at the University of Illinois. Lectures from 2005 onward are passworded, but lectures prior to that are freely available.

Freely available are many courses at MIT (Massachusetts Institute of Technology) in their MITOpenCourseWare. Recent and recommended is a discrete mathematics courses, Mathematics for Computer Science, Fall 2005.

On the Internet Since March 9, 1996    URL:    Last Revised:   June 25, 2007.