#!/usr/bin/perl -w use strict; use warnings; my $n = ; chomp($n); mprint($n, 1); sub mprint { my $n = shift; my $level = shift; while($level > 0) { print tostring($n, $level)."\n"; if($n <= 100) { $n += 11; $level++; } else { $n -= 10; $level--; } } print tostring($n, $level)."\n"; } sub tostring { my $n = shift; my $level = shift; return "$n" if $level <= 0; return "M($n)" if $level == 1; return "M(".tostring($n, $level-1).")"; }