← 完整题目索引

PROJECT EULER · #0434

刚性图

Rigid Graphs

仅题目 · 待解原题 ↗

回想一下,图是顶点和连接顶点的边的集合,由边连接的两个顶点称为相邻顶点。
通过将每个顶点与欧几里德空间中的一个点相关联,可以将图嵌入到欧几里德空间中。
灵活图是一种图的嵌入,可以连续移动一个或多个顶点,从而改变至少两个不相邻顶点之间的距离,同时每对相邻顶点之间的距离保持不变。
刚性图是不灵活的图的嵌入。
通俗地说,如果用完全旋转的铰链替换顶点,用不弯曲且无弹性的杆替换边缘,则图的任何部分都不能独立于图的其余部分移动,则图是刚性的。

嵌入欧几里得平面中的网格图并不严格,如以下动画所示:

0434_rigid.gif

但是,可以通过向单元格添加对角线边缘来使它们变得刚性。例如,对于 2×3 网格图,有 19 方法使图变得刚性:

0434_rigid23.png

请注意,出于此问题的目的,我们不考虑更改对角线的方向或将两条对角线添加到单元格中作为使网格图变得刚性的不同方式。

R(m,n) 为使 m×n 网格图变得刚性的方法数量。
例如R(2,3)=19R(5,5)=23679901

S(N) 定义为 R(i,j),其中 1i,jN
例如S(5)=25021721.
S(100),以 1000000033 为模给出你的答案。

题解待补充

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