题解 | #最大正方形#

最大正方形

http://www.nowcoder.com/practice/0058c4092cec44c2975e38223f10470e

哈哈哈,暴力直接过可还行。

class Solution {
public:
    /**
     * 最大正方形
     * @param matrix char字符型vector<vector<>> 
     * @return int整型
     */
    int solve(vector<vector<char>>& matrix) {
        int m=matrix.size();
        if(m==0) return 0;
        int n=matrix[0].size();
        if(n==0) return 0;
        int ans = 0;
        int side_len = (m<n) ? m : n;
        while(side_len > 0)
        {
            for(int i=0; i+side_len<=m; ++i)
            {
                for(int j=0; j+side_len<=n; ++j)
                {
                    if(matrix[i][j] == '1')
                    {
                        bool flag = true;
                        for(int x=0; x<side_len; ++x)
                        {
                            for(int y=0; y<side_len; ++y)
                            {
                                if(matrix[i+x][j+y]=='0')
                                {
                                    flag = false;
                                    break;
                                }
                            }
                        }
                        if(flag == true)
                        {
                            return side_len*side_len;
                        }
                    }
                }
            }
            -- side_len;
        }
        return ans;
    }
};
全部评论

相关推荐

不愿透露姓名的神秘牛友
11-27 10:48
点赞 评论 收藏
分享
offer多多的六边形战士很无语:看了你的博客,感觉挺不错的,可以把你的访问量和粉丝数在简历里提一下,闪光点(仅个人意见)
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务