Let C be an error-correcting code consisting of N codewords, in which each codeword consists of n letters taken from an alphabet A of length q, and every two distinct codewords differ in at least d = 2e + 1 places. Then C is said to be perfect if for every possible word w_0 of length n with letters in A, there is a unique code word w in C in which at most e letters of w differ from the corresponding letters of w_0. It is straightforward to show that C is perfect if sum_(i = 0)^e(n i)(q - 1)^i = q^n/N.