计算对角矩阵的最大回文率

时间:2019-06-03 14:25:38

标签: matrix palindrome c89 diagonal

我有C89作业

我需要遍历2D数组,即:a [N] [N],N必须为奇数 当通过矩阵的主对角线到元素a [i] [j]和i = j时,我们需要查看a [i-1] [j + 1] = a [i + 1] [j -1],然后继续检查它们是否相等,这是回文,因此我们需要遍历所有主要对角线,并检查矩阵具有的最长回文,然后计算对角线的元素和所有数字 我写了一个代码,但是它不起作用,我也不知道怎么了? 我不知道这是对的吗?

但是它还必须对a [3] [3]和a [5] [5]的矩阵起作用,这意味着所有奇数。

包括

    `#include <stdio.h>
# define N 7

int main()
{
     int mat[N][N];
    int i,j,m,n,count=0,max_polindrome=0;
    printf("Enter values the 2d array of size 7\n");
    for(i=0; i<N; i++)
    {
        for(j=0; j<N; j++)
        {
            scanf("%d",&mat[i][j]);
        }
    }
    for(i=1;i<N;i++){
                    for(i=j;i!=0,i!=N-1,j!=0,j!=N-1;i++,j--){
                            printf("what's wrong??");
        if(mat[i-1][j+1]=mat[i+1][j-1]){
            count +=2;
        }
                    }
                          if(count>max_polindrome){
            max_polindrome=count+1;
        }
        count=0;
                    }
    printf("size of max polindrome is %d",max_polindrome);
    return 0;
}`

例如: 输入为: 输入大小为7的二维数组的值;

1 2 3 24 3 2 5
3 15 1 2 3 200 2
24 1 1 1 100 2 2
31 20 20 38 1 2 3
1 2 100 2 3 4 5
1 200 3 4 5 6 7
7 1 2 3 4 5 6

输出为: 最大回文数是:5

0 个答案:

没有答案