Word wrap | Problem of the day: 16/04/2022 | Yash Dwivedi

  Рет қаралды 17,446

GeeksforGeeks Practice

GeeksforGeeks Practice

Күн бұрын

Пікірлер: 156
@kushagrabhardwaj3308
@kushagrabhardwaj3308 2 жыл бұрын
By far the best explanation on KZbin on word wrapping
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Thank you glad that you liked my explaination
@Hydrogen-w4k
@Hydrogen-w4k 6 ай бұрын
This is how one should explain such kind of problems, thanks a lot sir, this really helped me.
@yash.dwivedi
@yash.dwivedi 5 ай бұрын
Thanks means alot
@JoyaKhan-pu6ro
@JoyaKhan-pu6ro 2 жыл бұрын
best explanation of this problem till now. Thanks a lot sir
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Hi Joya glad that you liked my way of explaining keep coding ✨🎉🔥
@earningonlinevip8147
@earningonlinevip8147 2 жыл бұрын
best explanation of word wrap.....thank you .
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Thank you keep coding and please share with your friends as well
@shreyasingh1960
@shreyasingh1960 2 жыл бұрын
really good explanation, please never stop making videos, its helping a lot
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Thank you Shreya for your valuable remarks will try to work hard. Keep coding ✨🔥
@Vanshikapoor5
@Vanshikapoor5 2 жыл бұрын
Best explanation till now sir!!!
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Thank you
@space_ace7710
@space_ace7710 Жыл бұрын
Understood !! Best explanation ever :)
@yash.dwivedi
@yash.dwivedi Жыл бұрын
Hi thank you for your valuable feedback means a lot I will try to bring more such quality editorials in future. 🔥keep coding
@indianathena219
@indianathena219 15 күн бұрын
Suppose earlier you have calculated result for recurese(2,4) and stored in dp. IF same arguments appear for last I value, will it not give wrong and since in last I we have to ignore remaining cost?
@sirshenduroy6032
@sirshenduroy6032 2 жыл бұрын
Great explanation thanks for explaining the problem👍👍👍👍
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
glad that you liked my explanation thank you and keep coding ✨🔥
@abishekp640
@abishekp640 2 жыл бұрын
Not able to think of the solution after watching the video it looks easy to understand the approach
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Great 🔥 keep coding
@Sahilsharma-sk5vr
@Sahilsharma-sk5vr 5 ай бұрын
clear and crisp explaination
@yash.dwivedi
@yash.dwivedi 5 ай бұрын
Thanks alot
@HKSNGU
@HKSNGU Жыл бұрын
Best explanation of this problem on KZbin, thanks for the video. Understood 😊
@yash.dwivedi
@yash.dwivedi Жыл бұрын
Glad that it was helpful for you keep coding ✨🔥🎉
@gursimrankhela3242
@gursimrankhela3242 2 жыл бұрын
Best explanation of this problem on the internet 👏 thanks man
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Thank you for your valuable comment 🙏
@NilanjanBhattacharjee
@NilanjanBhattacharjee Жыл бұрын
@yash.dwivedi Suggest me if I'm wrong. You may need to update your code a bit, It doesn't handle the case when rem is -1, and it's possible in case of a word is placed in the same remaining size of a line. I'm providing the solution method in Java. public int dp(int arr[], int k, int i, int rem, int dp[][]){ if(i == arr.length) return 0; int ans; if(rem >=0 && dp[i][rem] != -1) return dp[i][rem]; else if(arr[i] > rem){ ans = (rem+1)*(rem+1)+dp(arr,k,i+1, k-arr[i]-1,dp); } else{ int option1 = (rem+1)*(rem+1)+dp(arr,k,i+1, k-arr[i]-1,dp); int option2 = dp(arr,k,i+1,rem-arr[i]-1,dp); ans = Math.min(option1,option2); } if(rem>=0){ return dp[i][rem] = ans; } return ans; }
@yash.dwivedi
@yash.dwivedi Жыл бұрын
yes this way is better .Actually at that time explaining the problem statement was a bit of challenge so that is why I might have missed this while recoding the editorial
@dhritiarora4147
@dhritiarora4147 2 жыл бұрын
you were amazing!! i was really having a hard time getting it in my head
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Thank you Dhriti glad that you liked my explanation keep coding ✨🔥
@uditkaushik
@uditkaushik 2 жыл бұрын
where are you considering the "last line" condition ?
@Anonymous____________A721
@Anonymous____________A721 Жыл бұрын
Can anyone explain
@manyagupta8679
@manyagupta8679 5 ай бұрын
The explanation was awesome....but I wrote the same as yours...only difference is I didn't use memset and it is not working without memset...what's wrong in this code? int solve(int i, int rem, vector&arr, int k, vector&dp) { if(i==arr.size()) { return 0; } if(dp[i][rem]!=-1) { return dp[i][rem]; } int ans; if(arr[i]>rem) { ans=(rem+1)*(rem+1)+solve(i+1,k-arr[i]-1,arr,k,dp); } else { int choice1=(rem+1)*(rem+1)+solve(i+1,k-arr[i]-1,arr,k,dp); int choice2=solve(i+1,rem-arr[i]-1,arr,k,dp); ans=min(choice1,choice2); } dp[i][rem]=ans; return dp[i][rem]; } int solveWordWrap(vectorarr, int k) { int n=arr.size(); vectordp(n, vector(k+1,-1)); return solve(0,k,arr,k,dp); }
@amityadav1459
@amityadav1459 5 ай бұрын
same issue
@Whyush7
@Whyush7 2 жыл бұрын
Awesome explanation!
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Thank you 💓
@mrinmoymondal9194
@mrinmoymondal9194 2 жыл бұрын
best explanation
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Thank you for your valuable feedback means alot
@ishaanrawal9327
@ishaanrawal9327 2 жыл бұрын
Great explanation, Yash! Thanks a lot :)
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
glad that you liked my explanation thank you and keep coding ✨🔥
@Drawing_tricks
@Drawing_tricks 4 ай бұрын
Only available decent explanation using Memoization .
@yash.dwivedi
@yash.dwivedi 4 ай бұрын
Thanks
@harshwardhanpatki846
@harshwardhanpatki846 Жыл бұрын
Understood 🔥🙇‍♂️
@yash.dwivedi
@yash.dwivedi Жыл бұрын
Glad that it helped
@aysheri8321
@aysheri8321 3 ай бұрын
is it possible to create a tabulation solution for this?
@LaxmanVaru-q9z
@LaxmanVaru-q9z 11 ай бұрын
Awesome 👌 👏 👍
@yash.dwivedi
@yash.dwivedi 11 ай бұрын
Thank you
@LogicArena01
@LogicArena01 Жыл бұрын
❤love your explanation
@yash.dwivedi
@yash.dwivedi Жыл бұрын
Thank you ❤
@ishumiglani0
@ishumiglani0 2 жыл бұрын
Understood Well explained ❤️
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Thank you 🙏keep coding ✨
@rajendertanwar1881
@rajendertanwar1881 3 ай бұрын
Best explanation on yt❤
@tusharnain6652
@tusharnain6652 2 жыл бұрын
You are good at it, you should run your own yt channel.
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
😅😅 Thank you for believing me such comments motivate me to work harder
@lucario404
@lucario404 2 жыл бұрын
Thanks Yash!
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Thank you ❤️
@srushtinarnaware4919
@srushtinarnaware4919 2 жыл бұрын
thanks for the great explanation
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Glad that you liked it keep coding ✨🔥
@ayushpatel-uw8od
@ayushpatel-uw8od 2 жыл бұрын
nice explanation.
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Thank you
@chandrasekharmandapalli9181
@chandrasekharmandapalli9181 2 жыл бұрын
Thanks yash
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Make sure to remember this kind of pattern while solving other dp problems ✨
@chandrasekharmandapalli9181
@chandrasekharmandapalli9181 2 жыл бұрын
@@yash.dwivedi sure yashh
@devanshtiwari9163
@devanshtiwari9163 Жыл бұрын
nicely explained
@yash.dwivedi
@yash.dwivedi Жыл бұрын
Thank you for your valuable feedback glad that it helped you 🙂
@miscellaneouscontent5078
@miscellaneouscontent5078 Жыл бұрын
great explanation
@yash.dwivedi
@yash.dwivedi Жыл бұрын
Thank you I am glad that you liked my explanation
@pranavkorhale5089
@pranavkorhale5089 2 жыл бұрын
very good explanation
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
thank you ❤
@gypsygirlkigypsylife
@gypsygirlkigypsylife Жыл бұрын
whats memset??
@yash.dwivedi
@yash.dwivedi Жыл бұрын
memset is a function in C++ that helps you set a bunch of boxes in a row to the same value. Imagine you have a row of boxes (which represent a block of memory) and you want to fill all the boxes with the same color (representing a specific value). That's what memset does for you. Hope it helps
@tanujgarg1236
@tanujgarg1236 2 жыл бұрын
great explanation :)
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Thank you for your valuable feedback keep coding ✨🎉
@fahadabdullah687
@fahadabdullah687 2 жыл бұрын
instead of going back to examples again and again ,, better keep the recursive tree right there only where the code is written .. that will make the video a lot less confusing....however great explanation bhai.
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
thank you for your valuable feedback keep coding ✨
@mohitpardeshi2471
@mohitpardeshi2471 2 жыл бұрын
why is it giving TLE in java?
@tusharnain6652
@tusharnain6652 2 жыл бұрын
Understood!
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
thank you glad that it helped
@rishabhkumar11
@rishabhkumar11 2 жыл бұрын
Thanks
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Hi Rishabh I am glad that you liked my explanation thank you and keep coding ✨🥳🎉
@AayushTayalBCH
@AayushTayalBCH 2 ай бұрын
You are wrong, your time complexity is not O(n^2), it is O(n*k) & the expected is O(N^2),
@parasgarg8187
@parasgarg8187 2 жыл бұрын
Understood finally
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Glad that it helped you keep coding ✨🔥
@premanand2640
@premanand2640 2 жыл бұрын
understood
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Great 🔥 keep coding ✨
@belive9676
@belive9676 Жыл бұрын
understood sir
@yash.dwivedi
@yash.dwivedi Жыл бұрын
Thank you glad that it was helpful
@gladyouseen8160
@gladyouseen8160 2 жыл бұрын
Pretty bad discription in gfg
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
I tried to explain the problem statement in detail
@ayush88
@ayush88 2 жыл бұрын
Now they've improved it. Also, they've made the difficulty level of it as Hard
@prasanth7698
@prasanth7698 2 жыл бұрын
great
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
glad that you liked it 😊
@devanshkhandelwal5453
@devanshkhandelwal5453 2 жыл бұрын
understood!
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Hi Devansh glad that you liked my explanation keep coding ✨🔥🔥
@divyanshrathore6349
@divyanshrathore6349 2 жыл бұрын
Understood
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Great 🔥
@ayush88
@ayush88 2 жыл бұрын
Very well explained Yash bhaiya. I looked for some other videos too of the same problem, they were taking pride in just explaining the question statement and then the code. Approach is the main thing, you explained it nicely 🙌🙌
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Hi Ayush I am glad that you liked my explanation it took alot of effort to make this video that you for the comment keep coding ✨🎉 🔥 also make sure to keep this concept in mind while solving other dp problems
@shivamkumarsingh7816
@shivamkumarsingh7816 2 жыл бұрын
When I type this code in java . I got Index Out of Bond Exception....because let say rem=2 and arr[i]=2 ... then rem-arr[i]-1===-1 ....so now rec(i,-1,arr,k).
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Are you writing the exact same code?
@harmanjeetsingh3556
@harmanjeetsingh3556 2 жыл бұрын
class Solution { public int solveWordWrap (int[] nums, int k) { // Code here int n = nums.length; int dp[][] = new int[n][k+1]; return helper(nums,0,k,dp,k,n); // return dp[1][k-nums[0]-1]; } public int helper(int nums[], int i, int rem,int dp[][], int k, int n){ if(i==n-1 ){ if(nums[i]>rem){ return (rem+1)*(rem+1); } return 0; } if(dp[i][rem]!=0){ return dp[i][rem]; } int ans = 0; int costa = Integer.MAX_VALUE,costb=Integer.MAX_VALUE; if(nums[i]>rem){ costa = (rem+1)*(rem+1) + helper(nums,i+1,k-nums[i]-1,dp,k,n); ans = costa; }else{ if(rem==nums[i]){ costb = helper(nums,i+1,k,dp,k,n); }else{ costb = helper(nums,i+1,rem-nums[i]-1,dp,k,n); } costb = Math.min(costb,(rem+1)*(rem+1) + helper(nums,i+1,k-nums[i]-1,dp,k,n)); ans = costb; } // System.out.println(ans); return dp[i][rem] = ans; } }
@priyankagrawal9920
@priyankagrawal9920 2 жыл бұрын
@@yash.dwivedi yes same here
@alankruthisaieni2562
@alankruthisaieni2562 2 жыл бұрын
Did you solved it??
@pranavkorhale5089
@pranavkorhale5089 2 жыл бұрын
just do a slight change in the DP array class Solution { public int dp[][] = new int [3000][3000]; public int solveWordWrap (int[] nums, int k) { for(int i=0;i
@bobbykuhikar5527
@bobbykuhikar5527 2 жыл бұрын
your code is getting wrong answer in gfg in current testcases
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Hi Bobby I just submitted the same code now and it got accepted. you can try to submit it the code passes all the testcases int dp[505][2005]; int rec(int i,int rem,vector& arr, int &k) { if(i==arr.size()) { return 0; } if(dp[i][rem]!=-1) return dp[i][rem]; int ans; if(arr[i]>rem) //next { ans=(rem+1)*(rem+1)+rec(i+1,k-arr[i]-1,arr,k); } else // same slne or next { int choice1=(rem+1)*(rem+1)+rec(i+1,k-arr[i]-1,arr,k); //next int choice2=rec(i+1,rem-arr[i]-1,arr,k); //same ans=min(choice1,choice2); } dp[i][rem]=ans; return dp[i][rem]; } int solveWordWrap(vectorarr, int k) { // Code here memset(dp,-1,sizeof(dp)); return rec(0,k,arr,k); }
@paulomeede1947
@paulomeede1947 2 жыл бұрын
understood!:)
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
great 🔥 keep coding ✨
@saketram690
@saketram690 2 жыл бұрын
Could u plz speak slowly ur being very fast not even able understand the question
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
feedback noted ! but I would recommend that you watch the complete video you will understand the question as well as the approach really well. Thanks
@ayush88
@ayush88 2 жыл бұрын
There's an option to control the playback speed. Try watching at 0.75x if you think that's fast.
@funwithfoooood6749
@funwithfoooood6749 2 жыл бұрын
The number of "right" >>>>>>
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
😅😅
@chiragpagaria7367
@chiragpagaria7367 2 жыл бұрын
it is giving index out of bound exception in java plzz help
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
please share your code
@shreyasri4774
@shreyasri4774 2 жыл бұрын
@@yash.dwivedi please look into this java code..same error int dp[][] = new int[501][2005]; public int solveWordWrap (int[] nums, int k) { // Code here for(int i[] : dp) Arrays.fill(i, -1); return rec(0, nums, k, k); } int rec(int idx, int nums[], int rem, int k){ if(idx == nums.length){ return 0; } //if(rem == -1) return rec(idx, nums, k, k); if( dp[idx][rem] != -1) return dp[idx][rem]; int ans = 0; if(nums[idx] > rem){ ans = (rem + 1)*(rem + 1) + rec(idx + 1, nums, k - nums[idx] - 1, k); }else{ int op1 = rec(idx + 1, nums, rem - nums[idx] - 1, k); int op2 = (rem + 1)*(rem + 1) + rec(idx + 1, nums, k - nums[idx] - 1, k); ans = Math.min(op1, op2); } dp[idx][rem] = ans; return dp[idx][rem]; }
@arunchoudhary9608
@arunchoudhary9608 2 жыл бұрын
Thanks bhai, but ek bat bat ko bar bar sun ke irritate ho gya
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Yes will improve these things but hope that you understood the problem
@thedailycoding
@thedailycoding 2 жыл бұрын
You are so confused. Fixed yourself, what you want to say.
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Please watch the video carefully you will understand everything.
@shubhamgarad657
@shubhamgarad657 Жыл бұрын
Did not get what he was trying to say . He himself is confused so much while explaining and was very fast .
@yash.dwivedi
@yash.dwivedi Жыл бұрын
re-watch you will understand it
@OnlyAyushAgarwal
@OnlyAyushAgarwal Жыл бұрын
@yash.dwivedi
@yash.dwivedi Жыл бұрын
Thank you
@penanrajput6690
@penanrajput6690 Жыл бұрын
best explanation
@yash.dwivedi
@yash.dwivedi Жыл бұрын
Thank you glad that you liked it keep coding ✨🔥
@riskyboygaming1215
@riskyboygaming1215 Жыл бұрын
Understood
@yash.dwivedi
@yash.dwivedi Жыл бұрын
Thank you keep coding
@vijetasinghyadav2026
@vijetasinghyadav2026 2 жыл бұрын
understood
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Great 🔥🔥 keep coding ✨
@prasanthibammidi4681
@prasanthibammidi4681 Жыл бұрын
Understood
@yash.dwivedi
@yash.dwivedi Жыл бұрын
great
@kartikkatara5999
@kartikkatara5999 2 жыл бұрын
understood
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
great 🔥 keep coding ✨
@namanupadhyay1660
@namanupadhyay1660 11 ай бұрын
Understood
@yash.dwivedi
@yash.dwivedi 11 ай бұрын
Thanks
@Mohit_Tanwar_18
@Mohit_Tanwar_18 2 жыл бұрын
understood
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
great 🔥❤️
@hariprakash1715
@hariprakash1715 2 жыл бұрын
understood
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
great keep learning 👍
@VishnuVardhan-gr6op
@VishnuVardhan-gr6op 2 жыл бұрын
understood
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
great 🔥🔥
@shreyashjadhav1303
@shreyashjadhav1303 2 жыл бұрын
understood
@yash.dwivedi
@yash.dwivedi 2 жыл бұрын
Great 🔥❤️
@venumadhav7321
@venumadhav7321 Жыл бұрын
understood
@yash.dwivedi
@yash.dwivedi Жыл бұрын
Thank you glad that it helped you 😊
@rvikur6233
@rvikur6233 Жыл бұрын
understood
@yash.dwivedi
@yash.dwivedi Жыл бұрын
great keep coding
@snehank4012
@snehank4012 Жыл бұрын
understood
@yash.dwivedi
@yash.dwivedi Жыл бұрын
thanks
@rajukale1974
@rajukale1974 4 ай бұрын
understood
Word Break - Dynamic Programming - Leetcode 139 - Python
15:35
Smart Sigma Kid #funny #sigma
00:33
CRAZY GREAPA
Рет қаралды 32 МЛН
Thank you Santa
00:13
Nadir Show
Рет қаралды 52 МЛН
Turn Off the Vacum And Sit Back and Laugh 🤣
00:34
SKITSFUL
Рет қаралды 9 МЛН
Word Break | Dynamic Programming | Leetcode #139
36:55
Techdose
Рет қаралды 94 М.
Are Women Smarter than Men?
18:12
Memeable Data
Рет қаралды 35 М.
GFG Weekly Coding Contest - 181 Post Analysis | GeeksforGeeks Practice
1:18:03
GeeksforGeeks Practice
Рет қаралды 338
Word Break Problem Dynamic Programming
15:51
Tushar Roy - Coding Made Simple
Рет қаралды 181 М.
The Traveling Salesman Problem: When Good Enough Beats Perfect
30:27
The Best Software Engineering Advice | Prime Reacts
55:05
ThePrimeTime
Рет қаралды 454 М.
Minimum edit distance | Dynamic programming | Backtracking
28:52
Smart Sigma Kid #funny #sigma
00:33
CRAZY GREAPA
Рет қаралды 32 МЛН