Help for this page

Select Code to Download


  1. or download this
    my @delim = ( ["A", -3, "C"], ["C", -4, "B"] );
    my @data  = (
    ...
      ["C", -2, "B"],
      ["B", -1, "E"]
    );
    
  2. or download this
    #!/usr/bin/perl -l
    use Algorithm::Loops 'NestedLoops';
    ...
              map { my $range = $_; join " ", map "[@$_]", @$range } @rang
    +es;
      }
    );
    
  3. or download this
    NestedLoops(
      [        [0    .. $N],  sub {[$_ .. $N]},
        ( sub {[$_+1 .. $N]}, sub {[$_ .. $N]} ) x $D
      ],
    
  4. or download this
    for my $i0 ( 0 .. $N ) {
      for my $i1 ( $i0 .. $N ) {
        for my $i2 ( $i1+1 .. $N ) {
          for my $i3 ( $i2 .. $N ) {
            ...
    
  5. or download this
      { OnlyWhen => sub {
           return 0 if @_ < 2*@delim;
    ...
           }
           return 1;
      } },
    
  6. or download this
      sub {
        my @ranges = map { [@data[ $_[2*$_] .. $_[2*$_+1] ]] } 0 .. $D;
        print join " / ",
              map { my $range = $_; join " ", map "[@$_]", @$range } @rang
    +es;
      }
    
  7. or download this
    [A -4 A] [A -1 C] / [C -4 D] [D -4 B]
    [A -4 A] [A -1 C] / [C -4 D] [D -4 B] [B -3 C] [C -2 B]
    ...
    [A -1 C] / [C -4 D] [D -4 B] [B -3 C] [C -2 B]
    [A -1 C] / [C -2 B]
    [A -1 C] [C -4 D] [D -4 B] [B -3 C] / [C -2 B]
    
  8. or download this
    my @intervals = NestedLoops(
      ..
    ...
        return [ map { [@data[ $_[2*$_] .. $_[2*$_+1] ]] } 0 .. $D ]
      }
    );