home *** CD-ROM | disk | FTP | other *** search
- Best Small Program: <baruch@genius.tau.ac.il> Osovlanski & Nissenbaum
-
- Doron Osovlanski
- CADTECH - CAD/CAM Systems Ltd
- 24 Ben-Yosef st.
- Givat-Shmuel 51905
- Israel
-
- Baruch Nissenbaum BARUCH@TAUNIVM.TAU.AC.IL
- Tel-Aviv University
- The Faculty of Engineering
- Tel-Aviv
- Israel
-
-
- Judges' comments:
-
- Compile. Try:
-
- echo 4 | baruch
- echo 7 | baruch
-
- This program reads an integer between 4 and 99 from the stdin.
-
- NOTE: The original program did not have a newline at the end of
- the file. We added a final newline to the file to make
- unpacking easy.
-
-
- Selected notes from the author:
-
- The goal of this work was to write a program that solves the
- classic n-queen problem, with a board size of up to 99x99, while
- keeping the program as short as possible.
-
- The program finds all possibilities to place N chess queens on
- a NxN chess board so that no queen is in range of any other queen
- (not in the same column row or diagonal). For each solution the
- chess board and the place of the queens is printed to stdout.
-
-
- This program is about as simple and as readable as possible.
- To make things even more simple we used a very limited subset of C:
-
- No pre-processor statements
- Only one, harmless, 'for' statement
- No ifs
- No breaks
- No cases
- No functions
- No gotos
- No structures
-
- In short, it contains no C language that might confuse the
- innocent reader. :-)
-
-
- This program demonstrates the claim that in C, any program
- can be written using a single 'for' statement, as long as it is
- long enough..
-
- The authors further note:
-
- For PC users:
- In order to compile the program under Turbo-C or MSC, 'int '
- should be inserted at the beginning of the program.
- For better looking results it is recommended to replace the " #Q"
- string with " \261\2".
-