回 帖 发 新 帖 刷新版面

主题:请指导!!!

求长度为素数的路径个数.
    对于正整数n(3<=n<20),可以画出n阶的回形矩阵.下面画出的分别是3阶的,4阶的和7阶的回形矩阵:对于n阶回形矩阵,从左上角出发,每步可以向右或向下走一格,走2*n-2步,可以到达右下角.我们把这样的路径上所有格子中的数值之和,叫做该路径的长度.本题要求,对于给出n值,求出n阶回形矩阵有多少路径的长度为素数?
1 1 1   1 1 1 1    1 1 1 1 1 1 1
1 2 1   1 2 2 1    1 2 2 2 2 2 1 
1 1 1   1 2 2 1    1 2 3 3 3 2 1
 n=3    1 1 1 1    1 2 3 4 3 2 1 
          n=4      1 2 3 3 3 2 1
                   1 2 2 2 2 2 1
                   1 1 1 1 1 1 1
                        n=7
如:
输入:3  输出:2

回复列表 (共5个回复)

沙发

第一步,输入阶数
第二步,建立二维数组,并在其中存储方阵的元素值
第三步,计算一条路径上的数值和(推荐递归法)
第四步,测试这个和是否素数,如果是,就累计
第五步,输出结果。

板凳

能不能给出程序?

3 楼

能不能给出程序?

4 楼

比较简单的。
关键的一步是,首先要把十几问题抽象为计算机解决的问题,然后考虑怎么编写程序。
这个问题可以设计一个二维数组,根据数组的特点设计每个数的之与其下标之间的关系,并对其付初值。然后使用回溯算法解决这个问题,其中主要包含了对其路径上的值的和是否为素数的判断!若是则使用一个整形变量对其增加一。最后输出这个整形变量的值!

5 楼

我要的是程序,方法我明白!!!

我来回复

您尚未登录,请登录后再回复。点此登录或注册