Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 80663
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 10, 20262026-05-10T21:20:17+00:00 2026-05-10T21:20:17+00:00

Given a NxN matrix with 0s and 1s. Set every row that contains a

  • 0

Given a NxN matrix with 0s and 1s. Set every row that contains a 0 to all 0s and set every column that contains a 0 to all 0s.

For example

1 0 1 1 0 0 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 

results in

0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 

A Microsoft Engineer told me that there is a solution that involves no extra memory, just two boolean variables and one pass, so I’m looking for that answer.

BTW, imagine it is a bit matrix, therefore just 1s and 0s are allow to be in the matrix.

  • 1 1 Answer
  • 1 View
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-10T21:20:17+00:00Added an answer on May 10, 2026 at 9:20 pm

    Ok, so I’m tired as it’s 3AM here, but I have a first try inplace with exactly 2 passes on each number in the matrix, so in O(NxN) and it is linear in the size of the matrix.

    I use 1rst column and first row as markers to know where are rows/cols with only 1’s. Then, there are 2 variables l and c to remember if 1rst row/column are all 1’s also. So the first pass sets the markers and resets the rest to 0’s.

    The second pass sets 1 in places where rows and cols where marked to be 1, and resets 1st line/col depending on l and c.

    I doubt strongly that I can be done in 1 pass as squares in the beginning depend on squares in the end. Maybe my 2nd pass can be made more efficient…

    import pprint  m = [[1, 0, 1, 1, 0],      [0, 1, 1, 1, 0],      [1, 1, 1, 1, 1],      [1, 0, 1, 1, 1],      [1, 1, 1, 1, 1]]    N = len(m)  ### pass 1  # 1 rst line/column c = 1 for i in range(N):     c &= m[i][0]  l = 1 for i in range(1,N):     l &= m[0][i]   # other line/cols # use line1, col1 to keep only those with 1 for i in range(1,N):     for j in range(1,N):         if m[i][j] == 0:             m[0][j] = 0             m[i][0] = 0         else:             m[i][j] = 0  ### pass 2  # if line1 and col1 are ones: it is 1 for i in range(1,N):     for j in range(1,N):         if m[i][0] & m[0][j]:             m[i][j] = 1  # 1rst row and col: reset if 0 if l == 0:     for i in range(N):         m [i][0] = 0  if c == 0:     for j in range(1,N):         m [0][j] = 0   pprint.pprint(m) 
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Given a NxN matrix, how could I find all possible paths to a location
I'd like to implement a system that generates unique NxN blocks when given a
Given the following code from a Microsoft example: public class EngineMeasurementCollection : Collection<EngineMeasurement> {
Given an NxN binary matrix (containing only 0's or 1's), how can we go
Give an nxn array of elements such that each row is in ascending order
Given that the web application doesn't have su privileges, I'd like to execute a
Given a certain date, I want to set the value of a cell with
Given that an input String may be specified as follows: read(xpath(‘...’)) or xpath(‘...’) or
Given the following SQL: ;WITH Results AS ( SELECT ItemListID, Title, ROW_NUMBER() OVER(ORDER BY
Given a set of values, it's possible for there to be many different possible

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.