Harvey Mudd College
Computer Science Department
Programming Practicum

Reference Links    HMC ACM Page       C++ & STL       Java 1.5 API


Congratulations! to the HMC teams in the 2007 Southern California regionals. The standings out of 53 participating teams:

Problems and progress

NAMES \ problems 0-cheappal 0-lexicon 0-treasures 0-wire
cs60grad Not Yet Not Yet Not Yet 1
Sep 2
16:15:42
.java

Lecture Slides

will be posted here as they are available...

Grading

This class is graded by default. However, you may certainly take the course Pass/Fail, if you would like. However, if you plan to take this class three times for CS elective credit (some students do this), do not take it pass/fail! CS Elective courses may not be P/F.
Here is the table mapping problems solved to grades.

Languages

The ACM contest has stated that it will support three languages: C, C++, and java. I'm looking forward to the day they add python to the list of supported languages.

In the fall term you may use other "reasonable" languages, but there will not be an incentive to expand to previously unused languages. It might be a good way to learn a new language, if you've had your sights on one... .

In the spring term, you may choose any of those languages or one of your own (postscript, anyone?). However, you may have to instruct me on how to test things on our lab machines!

The submission scripts use the suffix of the file to determine the language. For example, you won't be able to submit a java file named solution.cc.

Submission

Be sure to name your file the same as the name of the problem, and then type
/cs/ACM/acmSubmit <filename>.cc
You should run acmSubmit from the directory in which your submission file is located.

The script will test your file against a number of inputs. Unlike the ACM contest, if your submission's output differs from the "correct" output, the differences will be shown to you. This is a protection against the "correct" solutions not actually being correct. If your program passes all of the tests the script will let you know. It will also email me in order to help me keep the chart of solved problems updated.

Compiling your code:

While testing your code, you can compile with the commands

javac filename.java
or
g++ filename.cc
to create an executable file named a.out.

To check your program, copy the sample input and then redirect that file to your program, e.g.,
java  < <testfilename>
or
a.out < <testfilename>
That will print the results to the console (stdout) for inspection. You might also pipe the results to a file and check them against the anticipated output with diff.

Related Links

HMC ACM competition home page This contains links to several large problem sites.
Spring 2008 Programming Practicum Home Page
Fall 2007 Programming Practicum Home Page
Spring 2007 Programming Practicum Home Page
Fall 2006 Programming Practicum Home Page
Spring 2005 Programming Practicum Home Page
Fall 2004 Programming Practicum Home Page
Spring 2004 Programming Practicum Home Page
Fall 2003 Programming Practicum Home Page
Spring 2003 Programming Practicum Home Page
Fall 2002 Programming Practicum Home Page
Spring 2002 Programming Practicum Home Page
Fall 2001 Programming Practicum Home Page
Spring 2001 Programming Practicum Home Page
Fall 2000 Programming Practicum Home Page
Spring 2000 Programming Practicum Home Page