← 完整题目索引

PROJECT EULER · #0359

希尔伯特的新旅馆

Hilbert's New Hotel

仅题目 · 待解原题 ↗

无穷多个人依次编号为 123,等等,排队等待入住希尔伯特最新的无限旅馆。旅馆有无穷多层,依次编号为 123,等等;每层又有无穷多个房间,依次编号为 123,等等。

起初旅馆为空。希尔伯特宣布了为第 n 个人分配房间的规则:第 n 个人入住满足下列任一条件的楼层中,编号最小的那一层的第一个空房间:

  • 该层为空;
  • 该层不为空,且若最近入住该层的人是第 m 个人,则 m+n 是一个完全平方数。

1 个人入住第 1 层的第 1 号房间,因为第 1 层为空。
2 个人不能入住第 1 层的第 2 号房间,因为 1+2=3 不是完全平方数。
2 个人转而入住第 2 层的第 1 号房间,因为第 2 层为空。
3 个人入住第 1 层的第 2 号房间,因为 1+3=4 是完全平方数。

最终,队列中的每个人都能在旅馆中分到一个房间。

若第 n 个人入住第 f 层的第 r 号房间,则定义 P(f,r)n;若该房间无人入住,则定义为 0。下面是几个例子:
P(1,1)=1
P(1,2)=3
P(2,1)=2
P(10,20)=440
P(25,75)=4863
P(99,100)=19454

对所有满足 f×r=71328803586048 的正整数 fr,求所有 P(f,r) 的和,并以该和的最后 8 位数字作为答案。

题解待补充

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