介绍
我想搭梯子。为此,我从垃圾场清理了两个长板,其中有孔,我想将台阶放到这些孔中。但是,孔的位置不均匀,因此步骤会有点儿摇晃,我发现很难估算出我需要的杆数量。你的工作是为我做计算。
输入项
您的输入是两个位向量,以整数数组形式给出,代表了两个板。A 0
代表一个不带孔的1 aud的片段(距离的任意单位),而a 1
代表一个不带孔的1 aud的片段。数组的长度可能不同,并且包含不同数量1
的,但是它们不会为空。
我将按以下方式构造我的梯子。首先,我将两块电路板精确地相距一个aud,然后对齐它们的左端。对于每个索引i
,我测量i
第一块板的i
孔与第二块板的孔之间的距离,切下一根杆,然后将其连接在两个孔之间。一旦我在其中一块板上的孔用完了,我就会停下来。
输出量
您的输出是我将要执行的步骤所需的总杆数,以奥德为单位。输出应正确至少为六个有效数字。
例
考虑输入[0,1,1,0,1,1,1,1,0,0]
和[1,0,0,1,1,1,0,0,1]
。生成的梯形看起来像这样:
该梯子7.06449510224598
中杆的总长度为奥兹。
规则
您可以编写函数或完整程序。最低字节数获胜,并且不允许出现标准漏洞。
测试用例
[0] [0] -> 0.0
[0] [1,0] -> 0.0
[1,0,0] [1,1,1,1,1] -> 1.0
[0,1,0,1] [1,0,0,1] -> 2.414213562373095
[0,1,1,0,1,1,1,1,0,0] [1,0,0,1,1,1,0,0,1] -> 7.06449510224598
[1,1,1,1,1] [0,0,1,1,0,1,0,0,1] -> 12.733433128760744
[0,0,0,1,0,1,1,0,0,0,1,1,1,0,0,1,0,1,1,0,0,0,1,0] [0,0,1,1,0,1,1,1,0,0,0,0,0,1,1,0,1,1,0,0,0,1] -> 20.38177416534678