Test inputs:

1	      100	regular ternary tree on 100 vertices
2	      100	a centipede on 100 vertices (a path with leaf attached to each vertex)
3	    1,000	random tree
4	   10,000	snake (a path)
5	  100,000	centipede
6	  100,000	random tree with snakes on leaves
7	  500,000	random tree with short snakes on leaves
8	1,000,000	random tree with snakes on leaves
9	1,000,000	regular binary tree
10	1,000,000	top is regular, middle snakes, bottom all small non-isomorphic trees

Solutions:

ministry.c	linear-time solution
		(define QSORT to convert it to a simpler O(n*log n) solution)
sort.c		O(n^2*log n) solution -- sorting with recursive comparison of subtrees
		(define HASH to speed up unsuccessful comparisons by hashing)
hash.c		hashing heuristic
		(works fairly well on small and regular trees, gives wrong output for more
		complicated inputs)
tiso_lin.pas	linear-time solution in Pascal
tiso_qs.pas	O(n*log n) solution in Pascal

Controls:

make tests	Generate inputs and outputs
make check	Check the main solution
make check S=x	Check solution "x"
