原文为:
The cost of this operation is the sum of the weights of the blocks that are connected to the block being removed (including itself).
显然将 connected 翻译为相邻是有歧义的。后面的解释也会显得很别扭。建议翻译为相连。那么翻译应该变为:
有 $N$ 块砖块排列成一行,从左到右编号为 $1$ 到 $N$ 。每一个砖块都有一个重量,砖块 $i$ 的重量为 $A_i$。 Snuke 会对这些 $N$ 个砖块执行如下操作:
- 选择一个还没有被移除的砖块,然后移除它。这个操作的代价是与被移除的砖块相连的砖块(包括它自己)的重量之和。我们定义两块砖 $x$ 和 $y ~(x \leq y)$ 是相连的,当且仅当对于所有 $z (x \leq z \leq y)$ ,砖块 $z$ 仍然没有被移除。
有 $N!$ 种移除砖块的可能顺序。你需要对于所有可能的顺序计算出移除完所有 $N$ 块砖块的代价,并计算这些代价的和。由于答案可能非常大,答案需要对 $10^9+7$ 取模。