% Guidelines for Duke Internet Programming Contest
% latex format
% Time-stamp: <11 Nov 93, 13:56:51>
\documentstyle[11pt]{article}

% Margins
\sloppy
\setlength{\textwidth}{6.5in}
\setlength{\textheight}{9in}
\setlength{\topmargin}{-0.5in}
\setlength{\oddsidemargin}{0pt}
\setlength{\evensidemargin}{0pt}

\begin{document}

\title{Duke Internet Programming Contest}
\author{Logistics}
\date{November 18, 1993}
\maketitle

\noindent This document contains \pageref{lastpage} pages.\footnote{I
have made several changes to the original Duke document for the Athena
environment.  If you want a copy of the original document, ask me (
Marc Horowitz $<${\tt marc@mit.edu}$>$).}

\section{Overview}
The Duke Internet Programming Contest is a real-time event.  The
contest depends on fast, reliable electronic-mail links between your
machine and ours.  Basically, you run one of three shell scripts on
your machine that will send us specially formatted e-mail, which we
will then evaluate.  It is extremely important that you use the
programs we provide, since all of the processing is automated and
depends on the special formatting these programs do.  Once your
request has been processed on our machines, you will receive a reply
via e-mail.

If your e-mail link is slow (e.g., you have a UUCP link
which only connects once per hour) you will be at a serious
disadvantage:  you will not receive acknowledgements or clarifications
in a timely manner.  Also, you will not know what team number you have
been assigned until you receive the acknowledgement of your team
registration request.

\section{Setup and registration}
You should begin this process about one hour before the contest begins,
but no sooner, please.

Remember that you are only allowed one terminal or workstation per
team; essentially, the limit is one keyboard per team.  One of the team
members should log in as usual.  Pick a shell window to use (or, if you
are on a terminal, use the login shell) for interacting with the
judges.  Our examples here assume you are using csh; you may need to
adjust if you use another shell.  To get started, do:
\begin{verbatim}
        add dipc
        register
\end{verbatim}

This will make the contest scripts available to you, and start the
registration process. The registration program will ask for your
names, questions to determine the class of your team, the name of the
site you are from, and your email address.  Please be sure that the
answers you provide to the register program are correct, especially
the e-mail address.  If you make a mistake do not confirm the
registration.  You will receive a message back from the judges
confirming your registration.  (If you do not receive a message back
within 10--15 minutes, see Section~\ref{problems}.)  The message will
also include your team number. {\em Write down your team number
now.\/} All correspondence between us and you is done via the team
number, as is the scoring.  Follow any other instructions provided by
this mail message, or by your local contest administrator.  {\bf Do
not} reregister.  We highly suggest that you not discard any email you
receive from us until the contest is over.

You might wish to work in a protected directory.  To do this, type
\begin{verbatim}
   mkdir contest
   fs sa contest -clear $USER all
   cd contest
\end{verbatim}

Now you are ready to begin. The contest will begin precisely at {\sc 6pm}
(1800 hours) {\bf Eastern} time (2300 GMT, November 18). You should
start when your local computer clock reaches that time (try 
\verb+date -u+ to see GMT time\footnote{I've tested this on the vax,
dec, sun, and rs/6000.  If you have problems, contact me.}). Your
submissions will be time-stamped from your local computer clock, to
help remove network propagation delays from the timing.  If your
computer clock is off by more than a few minutes from the actual time,
please see about having it adjusted by a system adminstrator.

\section{To submit a judged run}

Once you think you have a problem completed, you need to send the
program (source code) to the judges. This is also done through the
mail. If your program is called {\tt foo.c}, you should type
\begin{verbatim}
     submit foo.c
\end{verbatim}
This script will ask you for the problem number, your team number, and
the language you are using.  See the rules for the exact compiler
versions we will be using.

You must type {\tt yes} to confirm your responses (please proofread
them first).  You will receive mail about the judge's decision. {\bf
Do not resubmit the program until you have received the judge's
decision. We will penalize your team for this.}

If you have set the environment variable \verb+IPCTEAM+ to your team
number, then this program will not ask you to enter the team number.

\section{To submit a question for clarification}

To ask a question of the judges, type
\begin{verbatim}
    clarify
\end{verbatim}
Provide your team number and the problem number. It will put you in
your editor (if you have set the environment variable EDITOR) to type
your question. Please explain your question clearly. Exit the editor.
Confirm the submission, and it will be sent to the judges. The judges
will respond, although they may not answer your question. Your
question and its answer may be sent to all other teams if it is
relevant.  You will know whether this is the case.

Clarifications may arrive through the mail at any time. Thus, you
should watch your mailbox.

If you have set the environment variable \verb+IPCTEAM+ to your team
number, then this program will not ask you to enter the team number.

\section{Problems with the contest logistics}
\label{problems} Send mail to {\tt khera@cs.duke.edu}, or call {\tt
+1-919-660-6581}.  {\bf Do not} send mail to {\tt contest@cs.duke.edu}
under any circumstances.  If you think your problem is with Athena and
not the contest files, send mail to {\tt marc@mit.edu}.

\label{lastpage}
\end{document}
