#!/usr/bin/perl -w
$string="CMCDXCXLIXIVI"; @letters=split //,$string;
foreach $i (1 .. 2 ** scalar @letters) {
%used=();$number="";$k=$i;
foreach ($j=0; $j<=$#letters;$j++,$k >>= 1) {
$letter=$letters[$j];
if ($k % 2 and !$used{$letter}) {
$used{$letter}=1; $number.=$letter;
}
}
if (!$seen{$number}){
$seen{$number}=1;
print "$number\n";
}
}