2482. Difference Between Ones and Zeros in Row and Column Medium
1/**
2 * [2482] Difference Between Ones and Zeros in Row and Column
3 *
4 * You are given a 0-indexed m x n binary matrix grid.
5 * A 0-indexed m x n difference matrix diff is created with the following procedure:
6 *
7 * Let the number of ones in the i^th row be onesRowi.
8 * Let the number of ones in the j^th column be onesColj.
9 * Let the number of zeros in the i^th row be zerosRowi.
10 * Let the number of zeros in the j^th column be zerosColj.
11 * diff[i][j] = onesRowi + onesColj - zerosRowi - zerosColj
12 *
13 * Return the difference matrix diff.
14 *
15 * <strong class="example">Example 1:
16 * <img src="https://assets.leetcode.com/uploads/2022/11/06/image-20221106171729-5.png" style="width: 400px; height: 208px;" />
17 * Input: grid = [[0,1,1],[1,0,1],[0,0,1]]
18 * Output: [[0,0,4],[0,0,4],[-2,-2,2]]
19 * Explanation:
20 * - diff[0][0] = onesRow0 + onesCol0 - zerosRow0 - zerosCol0 = 2 + 1 - 1 - 2 = 0
21 * - diff[0][1] = onesRow0 + onesCol1 - zerosRow0 - zerosCol1 = 2 + 1 - 1 - 2 = 0
22 * - diff[0][2] = onesRow0 + onesCol2 - zerosRow0 - zerosCol2 = 2 + 3 - 1 - 0 = 4
23 * - diff[1][0] = onesRow1 + onesCol0 - zerosRow1 - zerosCol0 = 2 + 1 - 1 - 2 = 0
24 * - diff[1][1] = onesRow1 + onesCol1 - zerosRow1 - zerosCol1 = 2 + 1 - 1 - 2 = 0
25 * - diff[1][2] = onesRow1 + onesCol2 - zerosRow1 - zerosCol2 = 2 + 3 - 1 - 0 = 4
26 * - diff[2][0] = onesRow2 + onesCol0 - zerosRow2 - zerosCol0 = 1 + 1 - 2 - 2 = -2
27 * - diff[2][1] = onesRow2 + onesCol1 - zerosRow2 - zerosCol1 = 1 + 1 - 2 - 2 = -2
28 * - diff[2][2] = onesRow2 + onesCol2 - zerosRow2 - zerosCol2 = 1 + 3 - 2 - 0 = 2
29 *
30 * <strong class="example">Example 2:
31 * <img src="https://assets.leetcode.com/uploads/2022/11/06/image-20221106171747-6.png" style="width: 358px; height: 150px;" />
32 * Input: grid = [[1,1,1],[1,1,1]]
33 * Output: [[5,5,5],[5,5,5]]
34 * Explanation:
35 * - diff[0][0] = onesRow0 + onesCol0 - zerosRow0 - zerosCol0 = 3 + 2 - 0 - 0 = 5
36 * - diff[0][1] = onesRow0 + onesCol1 - zerosRow0 - zerosCol1 = 3 + 2 - 0 - 0 = 5
37 * - diff[0][2] = onesRow0 + onesCol2 - zerosRow0 - zerosCol2 = 3 + 2 - 0 - 0 = 5
38 * - diff[1][0] = onesRow1 + onesCol0 - zerosRow1 - zerosCol0 = 3 + 2 - 0 - 0 = 5
39 * - diff[1][1] = onesRow1 + onesCol1 - zerosRow1 - zerosCol1 = 3 + 2 - 0 - 0 = 5
40 * - diff[1][2] = onesRow1 + onesCol2 - zerosRow1 - zerosCol2 = 3 + 2 - 0 - 0 = 5
41 *
42 *
43 * Constraints:
44 *
45 * m == grid.length
46 * n == grid[i].length
47 * 1 <= m, n <= 10^5
48 * 1 <= m * n <= 10^5
49 * grid[i][j] is either 0 or 1.
50 *
51 */
52pub struct Solution {}
53
54// problem: https://leetcode.com/problems/difference-between-ones-and-zeros-in-row-and-column/
55// discuss: https://leetcode.com/problems/difference-between-ones-and-zeros-in-row-and-column/discuss/?currentPage=1&orderBy=most_votes&query=
56
57// submission codes start here
58
59impl Solution {
60 pub fn ones_minus_zeros(grid: Vec<Vec<i32>>) -> Vec<Vec<i32>> {
61 vec![]
62 }
63}
64
65// submission codes end
66
67#[cfg(test)]
68mod tests {
69 use super::*;
70
71 #[test]
72 fn test_2482() {
73 }
74}
75
Back
© 2025 bowen.ge All Rights Reserved.