找到矩阵中给定值的所有平方子矩阵的总和

时间:2016-04-13 17:08:40

标签: java matrix

我必须在矩阵中找到所有子矩阵,然后找到它们的总和。但是在我的代码中似乎出现了一些问题,因为所有子矩阵总和生成的矩阵并不完整。示例:当我生成矩阵6X8时,子矩阵3X3在第一行应该至少为6,但只显示4。这是我的代码:

    private void makeSubsquare() {
    int m,ver,sum=0,p,start;
    int n=r1;
    if(k>n)
    {
        System.out.println("Sorry");
    }
    else
    {
        for(int i=0;i<=n-k;i++)
        {
            m=i; start=0; p=0; ver=0; sum=0; int j=0;
            while(j<n)
            {
                sum = sum + a[m][j];
                j++;
                p++;
                if(p==k)
                {   m++;
                    p=0;
                    ver++;
                    j=start;        
                }
                if((ver==k)&&(j<n))
                {
                    p=0;
                    m=i;
                    start++;
                    ver=0;
                    j=start;

                    System.out.print(sum + " ");
                    sum = 0;        
                }       
            }
            System.out.println();
        }
    }

0 个答案:

没有答案