[ create a new paste ] login | about

Link: http://codepad.org/zFGF5Cy1    [ raw code | output | fork ]

Perl, pasted on Mar 30:
#!/bin/perl
# Сочетания $n из $V

use warnings qw{ all };
use strict;

my $n = shift @ARGV ||  2; # 5
my $V = shift @ARGV || 4; # из 36 по умолчанию

my @a = (0 .. $n - 1);
print "@a\n";

for ( ;; ) {
my $j;
for ( $j = 0; $j < $n - 1; $j ++ ) {
if ( $a[$j] + 1 < $a[$j + 1] ) {
last;
}
}
unless ( $j < $n - 1 ) {
if ( $a[$n - 1] < $V - 1 ) {
$j = $n - 1
} else {
last
}
}
$a[$j] ++;
@a[0 .. $j - 1] = ( 0 .. $j - 1 );
print "@a\n";
}


Output:
1
2
3
4
5
6
0 1
0 2
1 2
0 3
1 3
2 3


Create a new paste based on this one


Comments: