抱歉,如果这看起来像另一个问题 - 有很多解决方案,但我没有找到我想要的东西,但我很可能错过了它。如果标题不是最好的描述,也很抱歉 - 不知道如何措辞。
我有五个“特征”作为字符串,例如:
$height $width $depth $length $colour
我想获得从 5 开始到 1的所有不同的独特组合,例如:
5: $height $width $depth $length $colour
4: $height $width $depth $length
4: $height $width $depth $colour
4: $height $width $length $colour
4: $height $depth $length $colour
4: $width $depth $length $colour
...
and so on
...
1: $height
1: $width
1: $depth
1: $length
1: $colour
我不知道它是否有所作为,但在我计划使用的代码中&&
and !$string
,例如:
4: $height && $width && $depth && $length && !$colour
4: $height && $width && $depth && !$length && $colour
4: $height && $width && !$depth && $length && $colour
4: $height && !$width && $depth && $length && $colour
4: !$height && $width && $depth && $length && $colour
and so on.
当我有 4 个功能时,我可以手动执行此操作,但有 5 个功能太多了!我认为将变量放在哈希中可能是一个很好的起点,但至于实际算法......任何帮助表示赞赏!
编辑:刚刚意识到它可能不清楚,但我希望能够“查询”每个组合,因为它们将在 if/elsif 语句中,所以if (h && w && !d ...)