String Compression II - Leetcode 1531 - Python

  Рет қаралды 29,584

NeetCodeIO

NeetCodeIO

Күн бұрын

Пікірлер: 73
@MP-ny3ep
@MP-ny3ep Жыл бұрын
They saved the best for the last😂. Thank you for explaining so well, it was a really tough problem.
@Sinders
@Sinders Жыл бұрын
changing one of the base cases from i == len(s) to len(s) - i == k helped my runtime dramatically
@khushmeetchugh8669
@khushmeetchugh8669 Жыл бұрын
it removed my TLE bro thanks
@gmasid
@gmasid Жыл бұрын
Thanks bro, this help TLE too!
@raghavbhatia5548
@raghavbhatia5548 Жыл бұрын
@@khushmeetchugh8669 C++ magic
@yang5843
@yang5843 Жыл бұрын
This removed my TLE for Java, thank you
@karanshah2283
@karanshah2283 Жыл бұрын
can you please explain the logic behind this base case change?
@Drdarker
@Drdarker Жыл бұрын
questions like this is almost impossible to solve in a real interview
@bhavikransubhe7244
@bhavikransubhe7244 Жыл бұрын
Today's daily leetcode challenge was difficult. Need to look for video 😂
@s20061002
@s20061002 Жыл бұрын
Well explanation that saved my life!!! I am able to apply what you have taught in the video and solve today's leetcode question. This is encouraging for me !!!
@tony7948
@tony7948 8 ай бұрын
If I get this on an interview. I'm just going to walk out
@ujjwalmaheshwari2327
@ujjwalmaheshwari2327 Жыл бұрын
class Solution { mapdp; int solve(string &s, int k, int i, char prev, int prevCnt){ if(k
@v-free
@v-free Жыл бұрын
It may be because you are using map, which is ordered and slow. Use unordered_map instead. You need to define a hash function since you are using a vector as key. struct vector_hash { size_t operator()(const vector& v) const { hash hasher; size_t seed = 0; for (int i : v) { seed ^= hasher(i) + 0x9e3779b9 + (seed2); } return seed; } }; unordered_map dp;
@lokeshmehar3949
@lokeshmehar3949 7 ай бұрын
@@v-free hey can u tell how i can learn to make custom comparator and custom hashfunction i have tried it from some of the internet tutorials (mostly written ones) please lmk know if u have some resource or tips for me to help me learn those thank u
@urjeans2896
@urjeans2896 7 ай бұрын
best explanation for this question. I was so traumatized until seeing this. Thanks for sharing
@MayankUpadhyaya-y2q
@MayankUpadhyaya-y2q Жыл бұрын
Thank you for explaining the solution. you are really brilliant and extraordinary.
@gary1614
@gary1614 10 ай бұрын
This is a very difficult question. Thank you for making this video. It makes a little bit more sense now. lol
@sauravsingh4497
@sauravsingh4497 Жыл бұрын
Off topic but the discord link in the description Is not working (i wanted to join the server)
@chaunceyzhang6595
@chaunceyzhang6595 Жыл бұрын
Thanks for your persistence do this video series!
@GuruPrasadShukla
@GuruPrasadShukla Жыл бұрын
great explaination man! keep going bro!
@SiddharthReddy16
@SiddharthReddy16 Жыл бұрын
No way you actually make difficult problems with such clarity! I visit this channel every day, no matter how easy/hard the daily question is just to see your approach.
@muhammadsodiqtoirov3204
@muhammadsodiqtoirov3204 Жыл бұрын
Thanks bro ! Good explanation Even gpt couldn't solve this problem ...
@shashankjoshi8250
@shashankjoshi8250 Жыл бұрын
Heyy Bro, your solution and way of explanation was amazing but still I am trying to understand this and how can I come up with this level of intuition to solve the problem. I was able to come up until greedy approach and got 74 passed.
@gnaneswarganta9920
@gnaneswarganta9920 Жыл бұрын
like what if we condensed the string first and later doing the computations
@susmitsingh1775
@susmitsingh1775 Жыл бұрын
man fuck this problem, took me a bloody day to solve
@pradyumnasingh9555
@pradyumnasingh9555 Жыл бұрын
thank you for such an easy explanation :)
@shreyashpandey9351
@shreyashpandey9351 Жыл бұрын
How will I be able to develop intuition like that?
@chiragsrivastava4217
@chiragsrivastava4217 Жыл бұрын
class Solution: def getLengthOfOptimalCompression(self, s: str, k: int) -> int: @cache def dfs(i, k, prev, prev_count): if k
@ish90917
@ish90917 Жыл бұрын
do we add cache evetime in question of DP or backtracking ? If not when do we add them ?
@suhaanbhandary4009
@suhaanbhandary4009 Жыл бұрын
We add cache when we know that for a given set of input the output is same and their should also be overlapping sub-problems. In backtracking cache is of no use as mostly the sub problems are independent and doesn't occur more than once eg: Sudoku, but in DP same sub-problems occur eg: Fibonacci(try to draw tree of recursive call to better visualize).
@pritz9
@pritz9 Жыл бұрын
To memoize the recursive solution, otherwise you are gonna get a TLE.
@tranquoctoan1996
@tranquoctoan1996 Жыл бұрын
Thank you, it saved me
@krateskim4169
@krateskim4169 Жыл бұрын
Thank you so much
@ronniey4231
@ronniey4231 Жыл бұрын
Can’t love your videos more😂
@aybarskeremtaskan
@aybarskeremtaskan Жыл бұрын
Shouldn't we also consider the case of deleting s[i] when it is the same as the prev character? Like if we have the string "aaaaaaaaaaaaaaaaaaaaaaaaa..." (25 times a) and the k is 20, then we need to delete so that it is not a25, but a5 instead.
@Caramel-r9w
@Caramel-r9w Жыл бұрын
How to do the opposite?
@il5083
@il5083 Жыл бұрын
Is using func_tools cache to save sometime a bad idea in an interview? (for memoization)
@RolopIsHere
@RolopIsHere 2 ай бұрын
I was allowed to use it, as long as you explain how it works...
@w702897028970289
@w702897028970289 Жыл бұрын
What an explanation...
@caothanhluan1813
@caothanhluan1813 Жыл бұрын
God tier explanation but TypeScript compiler says it TLE when using Map()😂😂😂
@ngneerin
@ngneerin Жыл бұрын
I see hard and I quit I see medium and I watch I see easy and I solve
@chaunceyzhang6595
@chaunceyzhang6595 Жыл бұрын
@SmoothCode
@SmoothCode Жыл бұрын
I relate so hard.
@chien-yucode992
@chien-yucode992 Жыл бұрын
So amazing
@shubhamraj25
@shubhamraj25 Жыл бұрын
The same solution in Python beat 79% of users for me
@shreehari2589
@shreehari2589 Жыл бұрын
How the heck will I come up with this solution on spot in an interview, these problems are real tough
@RajGupta-cu9hi
@RajGupta-cu9hi Жыл бұрын
How to convert it to 2-dp because some solve it in....?
@aryakadam7892
@aryakadam7892 Жыл бұрын
thank you
@binitrajshah9354
@binitrajshah9354 Жыл бұрын
didn't understand why it fail in greedy approach here? even when we consider our string as s = ''aaaaaaaaabaaaaaaaaac' and k = 2 s compressed = a9ba9c so deleting minimum window freq element here ''b' & 'c' implie "a18" with lenght 3. can someone explain this?
@thangavn8875
@thangavn8875 Жыл бұрын
phenomenal work, you gained a sub and a follower 💯
@tanishq8211
@tanishq8211 Жыл бұрын
I dont understand why he did ... note updated the deleted character? can somebody explain?
@0ManPiano0
@0ManPiano0 Жыл бұрын
Don’t understand your question
@racoon-thespy7062
@racoon-thespy7062 Жыл бұрын
bruhh, in the morning doing the problem, guy has already got the solution ready, hats off
@sidsudhir8231
@sidsudhir8231 Жыл бұрын
clutchhh
@ajaybabua9735
@ajaybabua9735 Жыл бұрын
Can someone please explain me about the increment part 14:04 to 16:00?
@w702897028970289
@w702897028970289 Жыл бұрын
Because when we encounter 1 -> 2 (a -> a2) 9 -> 10(a9 -> a10) 99 -> 100(a99 -> a100) all of these cases will result in answer to be plus by 1 and the rest of the case don't need to do this because the length remain the same like 3 -> 4(a3 ->a4)
@aswinnath8580
@aswinnath8580 Жыл бұрын
your explanation helped me to understand that part.@@w702897028970289
@w702897028970289
@w702897028970289 Жыл бұрын
I wrote it in Java version but 122/144 got TLE... Why
@mindrust203
@mindrust203 Жыл бұрын
Couldn't we just get the encoded string first and try to shrink it with a recursive function? Or will the addition of computing the encoded string give a TLE? EDIT: Nevermind this won't work, I thought run-length encoding would transform a string like "aabbaa" into "a4b2", but the encoding is actually "a2b2a2". If k = 2 in this case, the minimum length string would be "a4" with length 2. Indeed a hard problem.
@0ManPiano0
@0ManPiano0 Жыл бұрын
Lol I was so happy in the beginning thought “oh! That’s not HRAD!” Codes up this exact solution in like 10 min then also ran into this test case. Banged my head for the rest 30 min then gave up, lol. But after watching this solution does make me believe the condensed list will still work if we keep track of the previous character, which I did not implement this resulting in the failed case you gave.
@BTCSEDarshan
@BTCSEDarshan Жыл бұрын
Saviour !
@SantoshKumar-bu2qr
@SantoshKumar-bu2qr 11 ай бұрын
Why does he sounds like Bane (Batman) giving savage dialouges?
@shawn_yg1394
@shawn_yg1394 Жыл бұрын
The example2 is indicating that minheap does not work but I still waste time for that...
@shashankjoshi8250
@shashankjoshi8250 Жыл бұрын
Nah. it will work for example 2. I tried it.. greedy passes 74 tc.
@abhisheksuman4510
@abhisheksuman4510 Жыл бұрын
This aproach is giving runtime error due to stack overflow.
@shrn
@shrn Жыл бұрын
Same solution Runtime 1552 ms Beats 91.00% of users with Python3 Memory 39.88 MB Beats 40.00% of users with Python3 No !dea why leetcode does this sometimes
@stat_life
@stat_life Жыл бұрын
This solution had beaten 100% of users in runtime and memory, LEETCODE is broken
@anonymousperson4466
@anonymousperson4466 Жыл бұрын
why is it so hard.....goddamn
@0ManPiano0
@0ManPiano0 Жыл бұрын
This one is hard, isn’t it.
@anonymousperson4466
@anonymousperson4466 Жыл бұрын
@@0ManPiano0 I'm having a hard problem everyday...at least one.....this one's painfully hard for me
@CheeseStickzZ
@CheeseStickzZ Жыл бұрын
I mean this is cute and everything, but what the hell is the use of solving these. They have no practical application whatsoever 😂 AKA utter waste of time
Minimum Difficulty of a Job Schedule - Leetcode 1335 - Python
13:41
Making an Algorithm Faster
30:08
NeetCodeIO
Рет қаралды 198 М.
Enceinte et en Bazard: Les Chroniques du Nettoyage ! 🚽✨
00:21
Two More French
Рет қаралды 42 МЛН
It works #beatbox #tiktok
00:34
BeatboxJCOP
Рет қаралды 41 МЛН
“Don’t stop the chances.”
00:44
ISSEI / いっせい
Рет қаралды 62 МЛН
String Compression
11:48
Kevin Naughton Jr.
Рет қаралды 96 М.
What P vs NP is actually about
17:58
Polylog
Рет қаралды 146 М.
String Compression - LeetCode 443 - Python #leetcode75 #leetcode
12:04
DEEPTI TALESRA
Рет қаралды 1,8 М.
Trapping Rain Water II - Leetcode 407 - Python
15:19
NeetCodeIO
Рет қаралды 4,8 М.
How to Solve ANY LeetCode Problem (Step-by-Step)
12:37
Codebagel
Рет қаралды 343 М.
Dynamic Programming isn't too hard. You just don't know what it is.
22:31
DecodingIntuition
Рет қаралды 240 М.
Decode String - Leetcode 394 - Python
16:26
NeetCode
Рет қаралды 97 М.
The Rust Survival Guide
12:34
Let's Get Rusty
Рет қаралды 176 М.
Enceinte et en Bazard: Les Chroniques du Nettoyage ! 🚽✨
00:21
Two More French
Рет қаралды 42 МЛН