I understand why we are adding a top row since it would be out of bounds when we are calculating prefix sum for the first row (no "above"), but why are we also adding a left column?
Hey Neet! You explain great! I love your videos. Can you make a video about Problem 307. Range Sum Query - Mutable? It uses Segment Trees to optimize the algorithm. Would love to see that!
I think the only way is to first solve enough problems by learning through videos like this in a systemic manner, like going from one topic to another, practicing them again from memory, and then attempting enough new problems on our own till we are able to solve most of the unseen mediums. This is going to take an insane amount of time but for those like us who are not naturally gifted at this, I think it's the only way. @NeetCode - can you create a video on how you got to a stage where you can solve unseen mediums or hards?
Because you're completely ignoring what the exercise asks: What you typed is not O(1) time complexity for getting a region's sum. Your matrix indexing is also less than optimal: You're already looping over range(row1, row2 + 1), so you would just take self.matrix[i] instead of unnecessarily doing self.matrix[i:row2+1][0] to get a row of the matrix.
I would honestly never ask this in an interview. Kinda feels like you either have seen the problem and know the answer, or need to take significant amount of time deriving it. Tells you nothing about the candidate, except whether or not they do alot of leet code.
At first, it was a little tough to understand, but I watched this video multiple times. Now I fully understood the concept! thanks Neetcode!
Thank you Neet. This concept is a bit difficult to explain but you did a good job!
To be honest at the start I thought I was completely off the mark, but that's exactly how I solved it, thanks for the video.
My first time hearing about prefix sum but this made it easier to understand
I understand why we are adding a top row since it would be out of bounds when we are calculating prefix sum for the first row (no "above"), but why are we also adding a left column?
Really liking the strategy of posting videos on the streak day!!
Hey Neet! You explain great! I love your videos. Can you make a video about Problem 307. Range Sum Query - Mutable?
It uses Segment Trees to optimize the algorithm. Would love to see that!
thank you so much sir, took me 3 hours to understand it
you're de besttttt....Thank youuuuu
Thank You for such a wonderful explanation....
It would be great video. I am jumping on this r8 now. Cheers!
This can be generalized to all shapes with vertical or horizontal edges... Then we can apply inclusion exclusion principle
What's the logic behind calculating prefix sum for each cell? What's the intuition behind the formula you used?
Thank you! You are a master at explaining!
this is fabulous, nice work
mind blowing!👏
thank you so much
Excellent
Tanks a lot ~
Amazing
I don't know what will i do. I can't think of anything while solving these problems
I think the only way is to first solve enough problems by learning through videos like this in a systemic manner, like going from one topic to another, practicing them again from memory, and then attempting enough new problems on our own till we are able to solve most of the unseen mediums. This is going to take an insane amount of time but for those like us who are not naturally gifted at this, I think it's the only way.
@NeetCode - can you create a video on how you got to a stage where you can solve unseen mediums or hards?
@@staffeng great 👏
crystal clear
Line 10 : above = matrix[i][j+1]
How is this above it should be right ?
cant we compute the prefix matrix in place of the given matrix ?
Interesting video.
one-liner:
The time limit is exceeding, Why?
return sum([sum(self.matrix[i:row2+1][0][col1:col2+1]) for i in range(row1,row2+1)])
Can you explain?
Because you're completely ignoring what the exercise asks: What you typed is not O(1) time complexity for getting a region's sum. Your matrix indexing is also less than optimal: You're already looping over range(row1, row2 + 1), so you would just take self.matrix[i] instead of unnecessarily doing self.matrix[i:row2+1][0] to get a row of the matrix.
Sir, will you please solve leetcode 174?
Awesome ....
No doubt , great video as usual 😀
I would honestly never ask this in an interview. Kinda feels like you either have seen the problem and know the answer, or need to take significant amount of time deriving it. Tells you nothing about the candidate, except whether or not they do alot of leet code.
nice
Great video. Mind helping with similar video on Range sum mutable 308 which has update func. Would be great to understand Index tree implementations.
within a min i understood .
go
🥹