Skip to content

Missing Test Case - 3548. Equal Sum Grid Partition II #29057

@fhy23612516

Description

@fhy23612516

LeetCode 用户名

wang-lian-zhuan-liao-2kuai-qian

问题号码、标题和链接

  1. 等和矩阵分割 II https://leetcode.cn/problems/equal-sum-grid-partition-ii/

Bug Category

缺少测试用例 (由于缺少测试用例而接受不正确/低效的代码)

描述

当m大于等于三时,删四个角落的情况没有考虑也能过

你使用的语言

C++

你提交或者运行的代码

class Solution {
public:
    bool check(vector<vector<int>>& grid) {
        int n, m;
        n = grid.size(), m = grid[0].size();
        long long sum = 0, x = 0, y = 0;
        map<long long, int> mp1, mp2;
        for (int i = 0; i < n; i++)
            for (int j = 0; j < m; j++)
                mp2[grid[i][j]]++, sum += grid[i][j];
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < m; j++) {
                x += grid[i][j], mp1[grid[i][j]]++, mp2[grid[i][j]]--;
                if (mp2[grid[i][j]] == 0)
                    mp2.erase(grid[i][j]);
            }
            if (sum - x == x)
                return true;
            if ((i > 0 && m > 1 || m == 2) && (mp1.count(x - (sum - x))))
                return true;
            if ((i + 2 < n && m > 1 || m == 2) && mp2.count(sum - x - x)) {
                return true;
            }
            if (m == 1 &&
                (2 * x - sum == grid[0][0] || 2 * x - sum == grid[i][0] ||
                 sum - 2 * x == grid[n - 1][0] ||
                 i + 1 < n && sum - 2 * x == grid[i + 1][0])) {
                // cout << 1 << '\n';
                return true;
            }
        }
        return false;
    }
    bool canPartitionGrid(vector<vector<int>>& grid) {
        int n, m;
        n = grid.size(), m = grid[0].size();
        vector<vector<int>> a(m, vector<int>(n));
        for (int i = 0; i < n; i++)
            for (int j = 0; j < m; j++)
                a[j][i] = grid[i][j];
        // cout << check(grid) << '\n';
        return check(grid) || check(a);
    }
};

期望行为

[[4,4,4],[2,2,1],[1,1,1]]
true
上面那份代码返回false

屏幕截图

Image

额外的上下文

No response

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions