Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Language agnostic 列举所有可能的组合_Language Agnostic - Fatal编程技术网

Language agnostic 列举所有可能的组合

Language agnostic 列举所有可能的组合,language-agnostic,Language Agnostic,这与其说是一个真正的问题,不如说是一个思考练习 我有24个开关。开关成对布置;1和13,2和14,依此类推。 每个开关有两个可能的值;断断续续地。 如果一对开关中的一个开关处于接通位置,另一个开关必须处于断开位置。 接通位置的开关总是超过两个,但决不能超过十个 是否有一种优雅的方式列出可能的组合 每对开关有三种可能的状态:关闭;关上;断断续续。要生成所有可能的总体状态,请从000开始以基数3计数。。。000到222。。。222,其中有12个基数为3的数字,每个数字代表一对开关 设定开关数量的限制

这与其说是一个真正的问题,不如说是一个思考练习

我有24个开关。开关成对布置;1和13,2和14,依此类推。 每个开关有两个可能的值;断断续续地。 如果一对开关中的一个开关处于接通位置,另一个开关必须处于断开位置。 接通位置的开关总是超过两个,但决不能超过十个


是否有一种优雅的方式列出可能的组合

每对开关有三种可能的状态:关闭;关上;断断续续。要生成所有可能的总体状态,请从000开始以基数3计数。。。000到222。。。222,其中有12个基数为3的数字,每个数字代表一对开关


设定开关数量的限制更为复杂,除非有人想出更好的主意,否则可能必须通过显式计数来完成。您必须至少有两个非零数字,最多有十个非零数字。

1。您说“如果一对开关中的一个开关处于接通位置,另一个开关必须处于断开位置”。这是否意味着“如果一对开关中的一个开关处于断开位置,另一个开关必须处于接通位置。”,也是吗。假设你对我的第一个问题回答“是”:你有开关1..12“开”,所以13..24是关的。独立于单个开关对的状态,您始终有12个接通和12个断开。因此,“在接通位置总是有两个以上的开关”是正确的,但并不相关。“但不超过10”是错误的,因为总是有12开12关。@smartmeta抱歉,我不清楚。在这些对中,允许的变化是:关、关或关、开或开、关。