Give precise formulations for each of the following as constraint satisfaction problems:
Rectilinear floor-planning: find non-overlapping places in a large rectangle for a number of smaller rectangles.
Class scheduling: There is a fixed number of professors and classrooms, a list of classes to be offered, and a list of possible time slots for classes. Each professor has a set of classes that he or she can teach.
Hamiltonian tour: given a network of cities connected by roads, choose an order to visit all cities in a country without repeating any.