summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2012-10-25 02:22:25 -0500
committerJesse Luehrs <doy@tozt.net>2012-10-25 02:22:25 -0500
commitf941a821ef1b78baf66799c94084d69cc4c334fa (patch)
tree389dc2460d390e021fdea7d85b308baa47cd5ce7
parent50503831bef2fb4e8ba0c63b9432495a39fbaa5b (diff)
downloadrosalind-f941a821ef1b78baf66799c94084d69cc4c334fa.tar.gz
rosalind-f941a821ef1b78baf66799c94084d69cc4c334fa.zip
another solution
-rw-r--r--SSET.pl16
1 files changed, 16 insertions, 0 deletions
diff --git a/SSET.pl b/SSET.pl
new file mode 100644
index 0000000..82c127f
--- /dev/null
+++ b/SSET.pl
@@ -0,0 +1,16 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+use 5.016;
+
+chomp(my $length = <>);
+my @elements = 1..$length;
+
+say 2 ** $length;
+
+for my $i (0..(2 ** $length - 1)) {
+ my @included = split '', sprintf("%0${length}b", $i);
+ say '{'
+ . join(', ', map { $elements[$_] } grep { $included[$_] } 0..$length)
+ . '}';
+}