← 完整题目索引

PROJECT EULER · #0837

阿弥陀签

Amidakuji

仅题目 · 待解原题 ↗

Amidakuji(日语:阿弥陀签)是一种产生一组对象随机排列的方法。

一开始,绘制许多平行的垂直线,每个对象一条。然后添加指定数量的水平横档,每个横档都低于之前的任何横档。每个梯级都绘制为跨越随机选择的一对相邻垂直线的线段。

例如,下图描绘了具有三个对象(ABC)和六个横档的阿弥陀佛:

0837_amidakuji.png

图中的彩色线说明了如何形成排列。对于每个对象,从其垂直线的顶部开始,向下追踪,但遵循沿途遇到的任何横档,并记录我们最终到达的垂直线。在此示例中,生成的排列恰好是恒等式:AABBCC

a(m,n) 为不同的三对象 Amidakujis 的数量,这些三对象 Amidakujis 在 AB 之间具有 m 梯级,在 BC 之间具有 n 梯级,其结果是恒等排列。例如,a(3,3)=2,因为上面显示的阿弥陀佛及其镜像是唯一具有所需属性的。

您还可以得到 a(123,321)172633303(mod1234567891)

查找 a(123456789,987654321)。以 1234567891 为模给出你的答案。

题解待补充

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