1329. 将矩阵按对角线排序(暴力)

1329. 将矩阵按对角线排序

  • 暴力即可,因为满足i-j的值都是相等的是复合题意的,所以我们每次将i-j相同的存入数组,然后sort排序,将原来对角线数组更新为拍完数之后的数组
class Solution {
public:
    vector<vector<int>> diagonalSort(vector<vector<int>>& mat) {
        int h=mat.size();
        int l=mat[0].size();
        for(int i=0;i<h;i++)
        {
            for(int j=0;j<l;j++)
            {
                vector<int>v;
                for(int k=i;k<h;k++)
                {
                    for(int t=j;t<l;t++)
                    {
                        if(k-t==i-j)
                            v.push_back(mat[k][t]);
                    }
                }
                sort(v.begin(),v.end());
                int m=0;
                for(int k=i;k<h;k++)
                {
                    for(int t=j;t<l;t++)
                    {
                        if(k-t==i-j)
                        {
                            mat[k][t]=v[m++];
                        }
                    }
                }
            }
        }
        return mat;
    }
};
posted @ 2020-07-11 11:37  branna  阅读(303)  评论(0编辑  收藏  举报