← 完整题目索引

PROJECT EULER · #0382

生成多边形

Generating Polygons

仅题目 · 待解原题 ↗

多边形是由直线段组成的平面形状,这些直线段连接起来形成闭合链或电路。多边形至少由三条边组成,并且不自相交。

如果满足以下条件,则称一组正数 S 生成多边形 P

  • P 的任何两条边都没有相同的长度,
  • P 每条边的长度在 S 中,并且
  • S 不包含其他值。

例如:
集合 {3,4,5} 生成一个边长为 345 的多边形(三角形)。
集合 {6,9,11,24} 生成边为 691124 的多边形(四边形)。
集合 {1,2,3}{2,3,4,9} 根本不生成任何多边形。

考虑序列 s,定义如下:

  • s1=1, s2=2, s3=3
  • sn=sn1+sn3 对于 n>3

Un为集合{s1,s2,,sn}。例如,U10={1,2,3,4,6,9,13,19,28,41}
f(n)Un 的子集数,该子集至少生成一个多边形。
例如,f(5)=7f(10)=501f(25)=18635853

查找 f(1018) 的最后 9 位。

题解待补充

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