- 论坛徽章:
- 0
|
#!/usr/bin/perl
my @a = qw(4 3 2 2 2);
my @b = qw(4 2);
# 3 2 M 2 2 M
my @c;
sub get_rest_value {
my $a = shift;
my $b = shift;
while(scalar @$a){
if (@$a[0] > @$b[0]){
shift @$a;
}else{
last;
}
}
}
sub get_result{
my $a = shift;
my $b = shift;
my @a = @$a;
my @b = @$b;
if (scalar @a == 0 ) {print join (' ', @c); exit 0}
foreach my $i (0 .. $#a){
foreach my $j (0 .. $#b){
if ($a[0]){
if ( $a[0] <= $b[$j]){
push @c, $a[0] . "-" . $b[$j];
shift @a;
}else{
push @c, "M";
goto L;
}
}
$j++;
}
if (scalar @a){
push @c, "M";
}
$i++;
}
L: get_result(\@a,\@b);
}
get_rest_value(\@a, \@b);
get_result(\@a,\@b);
| 搞定,不过好像不是很清晰。。。哎
[ 本帖最后由 yxm0513 于 2009-1-17 01:50 编辑 ] |
|