|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 东岸 于 2019-12-2 11:30 编辑
期末项目:巧放五角星
现有10 颗五角星,在方格线中放置这些五角
星,每条线上有且仅有两颗,怎样进行巧放(已经
有两颗已经放好了,还剩8 颗未放)。
项目要求
(1) 请编制Python 程序进行求解其他8 个五
角星该如何放置。
(2) 请用Python 程序列出符合要求的10 颗
五角星摆放的所有可能。
【输出格式要求】
为每个解决方案一行,一行内按照字母顺序输出
10 个位置。
【可选项】可以以图形的方式输出所有结果。
初始图的Python 定义如下:
a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y = range(25)
Graph = [{a, c, e, f, g},
{a, b, x, m, l},
{a, v, w, t, r},
{d, c, b, v, u},
{d, e, x, p, o},
{d, f, h, i, j},
{g, h, x, s, r},
{g, i, k, y, l},
{j, k, x, w, u},
{j, y, m, n, o},
{l, n, p, q, r},
{o, q, s, t, u}]
star_pos=[s, h]
【评价标准】
(1) 能够基于指定的star_pos=[s, h]输出放置的所有结果(获得基础得分75 分);
(2) 能够基于用户指定的初始位置,输出放置的所有可能结果包括无结果(加10 分);
(3) 用暴力枚举法求得的所有结果仅能获得基础分(75 分)
(4) 如用非暴力枚举法所得的结果能够获得基准分(85 分)
(5) 如能图形输出所有结果(加10 分)
(6) 良好的代码风格(5 分)
|
|