← 完整题目索引

PROJECT EULER · #0522

希尔伯特停电

Hilbert's Blackout

仅题目 · 待解原题 ↗

尽管希尔伯特的无限酒店很受欢迎,希尔伯特还是决定尝试管理超大型的有限酒店。

为了削减成本,希尔伯特希望用自己的特殊发电机为新酒店供电。每个楼层都会向其上方的楼层发送电力,顶层将电力向下发送回底层。这样,希尔伯特就可以将发电机放置在任何给定的楼层(因为他喜欢有这个选择),并使电力在整个酒店自由流动。

不幸的是,承包商在建造酒店时误解了原理图。他们告诉希尔伯特,每层楼都是随机向另一层楼供电。这可能会损害希尔伯特将发电机放置在任何地方的自由,因为某些楼层可能会发生停电。

例如,考虑一个三层酒店的示例流程图:

0522_hilberts_blackout.png

如果发电机放在一楼,那么每层楼都会收到电力。但如果放在二楼或三楼,那么一楼就会停电。请注意,虽然给定楼层可以同时从许多其他楼层接收电力,但它只能向其他楼层发送电力。

为了解决停电问题,希尔伯特决定对最少数量的楼层进行重新布线。重新布线楼层就是更改其供电的楼层。在上面的示例图中,通过重新布线二楼以将电力输送到一楼而不是三楼,可以避免所有可能的停电。

F(n)n 层酒店中所有可能的潮流布置所需的最少楼层重新布线数量的总和。例如,F(3)=6F(8)=16276736F(100)mod135707531=84326147

查找 F(12344321)mod135707531

题解待补充

这道题的题目已收录,解题思路、代码和答案将在后续补充。