在物理学中,电荷像排斥电荷一样,与电荷吸引不同。
的距离分开的两个单元之间的电荷的电势的能量d
是1/d
对于像费和-1/d
用于不同于电荷。电荷系统的势能是所有电荷对之间的势能之和。
挑战
确定由字符串表示的单位电荷系统的势能。
这是代码高尔夫球,因此以字节为单位的最短解决方案为准。
输入项
阿非空多行字符串,仅由+
,-
,
和换行符,其中每行具有恒定的宽度。的+
和-
表示的1和-1分别收费。例如,以下字符串:
+ -
+
(以左上角为原点)表示一个系统,其正电荷为(4,0)和(1,-1),负电荷为(6,0)。
或者,您可以将输入作为行列表。
输出量
一个带符号的实数,代表收费系统的势能。输出应正确到四个有效数字或10 -4,以较小者为准。
测试用例:
--
应该输出0
。没有排斥或吸引的成对电荷,并且空白不会改变任何东西。
+
-
只有两项费用;它们在垂直方向上相距1个单位,在水平方向上相距2个单位,因此它们的距离为sqrt(5)。输出应为-1 / sqrt(5)= -0.447213595
。
+ -
- +
应该给-2.001930531
。
- -- -+ - - -+-++-+
+-- + +-- + ++-++ -
---++-+-+- -+- - +-
-- - -++-+ --+ +
- + --+ ++-+ +-
-- ++- + + -+--+
+ +++-+--+ +--+++ +
-+- +-+-+-+ -+ +--+
- +-+- + ---+
- - ++ -+- --+--
应该给-22.030557890
。
---+--- ++-+++- -+ +
-+ ---+++-+- +- + +
---+-+ - ---- +-- -
- + +--+ -++- - -
--+ - --- - -+---+ -
+---+----++ - + +
-+ - ++-- ++- -+++
+----+- ++-+-+ -
++- -+ -+---+ -- -+
+-+++ ++-+-+ -+- +-
应该给26.231088767
。