C++ easily understandable solution

programming
Tags: #<Tag:0x00007f242746c0b0>

#1
int maxarea(vector<int> b){
    int p=0;
    for(int i=0; i<b.size(); i++){
        int y=(i+1)*b[i];
        p=max(p,y);
    }return p;
}

int Solution::solve(vector<vector<int> > &A) {
    for(int i=1; i<A.size(); i++){
        for(int j=0; j<A[i].size(); j++){
           if( A[i][j]!=0) A[i][j]+=A[i-1][j];
            
        }
    }
    vector<int> b;
    int k=0;                                                                                                            
    for(int i=0; i<A.size(); i++){
        b=A[i];
        sort(b.begin(),b.end(),greater<int>());
        int p=maxarea(b);
        k=max(p, k);
    }return k;
}