summaryrefslogtreecommitdiffstats
path: root/SSET.pl
diff options
context:
space:
mode:
Diffstat (limited to 'SSET.pl')
-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)
+ . '}';
+}