This paper presents an algorithm for generating unconstrained guillotine-cutting patterns for rectangular blanks. A pattern includes at most two sections, each of which consists of strips of the same length and direction. The sizes and strip directions of the sections must be determined optimally to maximize the value of the blanks cut. The algorithm uses an implicit enumeration method to consider all possible section sizes, from which the optimal sizes are selected. It may solve all the benchmark problems listed in the OR-Library to optimality. The computational results indicate that the algorithm is efficient both in computation time and in material utilization. Finally, solutions to some problems are given. 2004 Elsevier Ltd. All rights reserved.