8 my ($name) = /\A(\w+):/;
10 $prop{$name} = \@vals;
16 my ($amounts, $rem, $rest) = @_;
19 for my $p (keys %prop) {
20 print "$p=$amounts->{$p}, ";
26 for my $p (keys %prop) {
27 $sum += $prop{$p}->[$t] * $amounts->{$p};
32 $max = $mul if !$max || $mul > $max;
34 for my $i (0 .. $#$rest) {
36 my ($ing) = splice @nr, $i, 1;
37 my $min = @nr ? 0 : $rem;
38 for my $a ($min .. $rem) {
41 addprop(\%na, $rem-$a, \@nr);
47 addprop({}, 100, [ keys %prop ]);