zoukankan      html  css  js  c++  java
  • 蓝桥杯---最大子阵

    问题描述

    给定一个n×m 的矩阵 A,求A 中的一个非空子矩阵,使这个子矩阵中的元素和最大。其中,A 的子矩阵指在 A 中行和列均连续的一部分。 
    输入格式 
    输入的第一行包含两个整数 n,m(1≤n,m≤50),分别表示矩阵 A 的行数和列数。 
    接下来 n 行,每行 m 个整数,表示矩阵 A(−1000≤i,j≤1000)。 
    输出格式 
    输出一行,包含一个整数,表示 A 中最大子矩阵的元素和。 
    样例输入 
    3 3 
    2 -4 1 
    -1 2 1 
    4 -2 2 
    样例输出 
    6

    C语言代码

    #include<stdio.h>
    int main(){
        int n,m;
        int a[51][51];
        int max=-1000000000;
        scanf("%d %d",&n,&m);
        for(int i=0;i<n;i++){
            for(int j=0;j<m;j++){
                scanf("%d",&a[i][j]);
            }
        }
        for(int i=0;i<n;i++){
            for(int j=0;j<m;j++){
            for(int k=i;k<n;k++){
                for(int p=j;p<m;p++){
                    int sum=0;
                    for(int c=i;c<=k;c++){
                        for(int d=j;d<=p;d++){
                            
                                sum=sum+a[c][d];    
                            
                        }
                    }
                    if(max<sum){
                        max=sum;
                    }
                }
            }
            
            }
        } 
        printf("%d",max);
        return 0;
    }
  • 相关阅读:
    HTTP状态码
    TCP慢启动、拥塞避免、快速重传、快速恢复(转)
    优化js设计,防止浏览器假死(转)
    Firebug详解(转)
    WUST Online Judge
    WUST Online Judge
    WUST Online Judge
    WUST Online Judge
    WUST Online Judge
    WUST Online Judge
  • 原文地址:https://www.cnblogs.com/pythonbigdata/p/8540179.html
Copyright © 2011-2022 走看看