Project Euler 68
Project Euler 68
题目
Magic $5$-gon ring
Consider the following “magic” $3$-gon ring, filled with the numbers $1$ to $6$, and each line adding to nine.

Working clockwise, and starting from the group of three with the numerically lowest external node ($4,3,2$ in this example), each solution can be described uniquely. For example, the above solution can be described by the set: $4,3,2; 6,2,1; 5,1,3$.
It is possible to complete the ring with four different totals: $9, 10, 11$, and $12$. There are eight solutions in total.
| Total | Solution Set |
|---|---|
| $9$ | $4,2,3; 5,3,1; 6,1,2$ |
| $9$ | $4,3,2; 6,2,1; 5,1,3$ |
| $10$ | $2,3,5; 4,5,1; 6,1,3$ |
| $10$ | $2,5,3; 6,3,1; 4,1,5$ |
| $11$ | $1,4,6; 3,6,2; 5,2,4$ |
| $11$ | $1,6,4; 5,4,2; 3,2,6$ |
| $12$ | $1,5,6; 2,6,4; 3,4,5$ |
| $12$ | $1,6,5; 3,5,4; 2,4,6$ |
By concatenating each group it is possible to form $9$-digit strings; the maximum string for a $3$-gon ring is $432621513$.
Using the numbers $1$ to $10$, and depending on arrangements, it is possible to form $16$- and $17$-digit strings. What is the maximum $16$-digit string for a “magic” $5$-gon ring?

解决方案
为每个圈进行编号:

其中,外圈用$0\sim 4$标记,内圈用$5\sim9$来标记。
由于输出的是$16$位数,因此枚举过程中需要排除$10$在内圈的情况。
最终,枚举全排列,一个个进行判断。
代码
1 | from itertools import permutations |