
03.05.2009, 13:45
|
|
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
С нами:
9840758
Репутация:
808
|
|
Более интересное решение, отсюда:
Код:
#!/usr/bin/perl -w
use strict;
my %summa = ();
for my $i ( 0 .. 999 ) {
push @{ $summa{summa($i)} }, $i;
}
for my $x ( sort { $a <=> $b } keys %summa ) {
my @x = @{ $summa{$x} };
for my $i ( @x ) {
for my $j ( @x ) {
printf "%03d%03d\n", $i, $j;
}
}
}
sub summa
{
my $x = shift;
my $s = 0;
while ( $x ) {
$s += $x % 10;
$x = int($x / 10);
}
return $s;
}
|
|
|