The effect of a repair of a complex system can usually be approximated by the following two types: minimal repair for which the system is restored to its functioning state with minimum effort, or perfect repair for which the system is replaced or repaired to a good-as-new state. When both types of repair are possible, an important problem is to determine the repair policy; that is, the type of repair which should be carried out after a failure. In this paper, an optimal allocation problem is studied for a monotonic failure rate repairable system under some resource constraints. In the first model, the numbers of minimal & perfect repairs are fixed, and the optimal repair policy maximizing the expected system lifetime is studied. In the second model, the total amount of repair resource is fixed, and the costs of each minimal & perfect repair are assumed to be known. The optimal allocation algorithm is derived in this case. Two numerical examples are shown to illustrate the procedures.