By far the best explanation on KZbin on word wrapping
@yash.dwivedi2 жыл бұрын
Thank you glad that you liked my explaination
@Hydrogen-w4k6 ай бұрын
This is how one should explain such kind of problems, thanks a lot sir, this really helped me.
@yash.dwivedi5 ай бұрын
Thanks means alot
@JoyaKhan-pu6ro2 жыл бұрын
best explanation of this problem till now. Thanks a lot sir
@yash.dwivedi2 жыл бұрын
Hi Joya glad that you liked my way of explaining keep coding ✨🎉🔥
@earningonlinevip81472 жыл бұрын
best explanation of word wrap.....thank you .
@yash.dwivedi2 жыл бұрын
Thank you keep coding and please share with your friends as well
@shreyasingh19602 жыл бұрын
really good explanation, please never stop making videos, its helping a lot
@yash.dwivedi2 жыл бұрын
Thank you Shreya for your valuable remarks will try to work hard. Keep coding ✨🔥
@Vanshikapoor52 жыл бұрын
Best explanation till now sir!!!
@yash.dwivedi2 жыл бұрын
Thank you
@space_ace7710 Жыл бұрын
Understood !! Best explanation ever :)
@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
@indianathena21915 күн бұрын
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?
@sirshenduroy60322 жыл бұрын
Great explanation thanks for explaining the problem👍👍👍👍
@yash.dwivedi2 жыл бұрын
glad that you liked my explanation thank you and keep coding ✨🔥
@abishekp6402 жыл бұрын
Not able to think of the solution after watching the video it looks easy to understand the approach
@yash.dwivedi2 жыл бұрын
Great 🔥 keep coding
@Sahilsharma-sk5vr5 ай бұрын
clear and crisp explaination
@yash.dwivedi5 ай бұрын
Thanks alot
@HKSNGU Жыл бұрын
Best explanation of this problem on KZbin, thanks for the video. Understood 😊
@yash.dwivedi Жыл бұрын
Glad that it was helpful for you keep coding ✨🔥🎉
@gursimrankhela32422 жыл бұрын
Best explanation of this problem on the internet 👏 thanks man
@yash.dwivedi2 жыл бұрын
Thank you for your valuable comment 🙏
@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 Жыл бұрын
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
@dhritiarora41472 жыл бұрын
you were amazing!! i was really having a hard time getting it in my head
@yash.dwivedi2 жыл бұрын
Thank you Dhriti glad that you liked my explanation keep coding ✨🔥
@uditkaushik2 жыл бұрын
where are you considering the "last line" condition ?
@Anonymous____________A721 Жыл бұрын
Can anyone explain
@manyagupta86795 ай бұрын
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); }
@amityadav14595 ай бұрын
same issue
@Whyush72 жыл бұрын
Awesome explanation!
@yash.dwivedi2 жыл бұрын
Thank you 💓
@mrinmoymondal91942 жыл бұрын
best explanation
@yash.dwivedi2 жыл бұрын
Thank you for your valuable feedback means alot
@ishaanrawal93272 жыл бұрын
Great explanation, Yash! Thanks a lot :)
@yash.dwivedi2 жыл бұрын
glad that you liked my explanation thank you and keep coding ✨🔥
@Drawing_tricks4 ай бұрын
Only available decent explanation using Memoization .
@yash.dwivedi4 ай бұрын
Thanks
@harshwardhanpatki846 Жыл бұрын
Understood 🔥🙇♂️
@yash.dwivedi Жыл бұрын
Glad that it helped
@aysheri83213 ай бұрын
is it possible to create a tabulation solution for this?
@LaxmanVaru-q9z11 ай бұрын
Awesome 👌 👏 👍
@yash.dwivedi11 ай бұрын
Thank you
@LogicArena01 Жыл бұрын
❤love your explanation
@yash.dwivedi Жыл бұрын
Thank you ❤
@ishumiglani02 жыл бұрын
Understood Well explained ❤️
@yash.dwivedi2 жыл бұрын
Thank you 🙏keep coding ✨
@rajendertanwar18813 ай бұрын
Best explanation on yt❤
@tusharnain66522 жыл бұрын
You are good at it, you should run your own yt channel.
@yash.dwivedi2 жыл бұрын
😅😅 Thank you for believing me such comments motivate me to work harder
@lucario4042 жыл бұрын
Thanks Yash!
@yash.dwivedi2 жыл бұрын
Thank you ❤️
@srushtinarnaware49192 жыл бұрын
thanks for the great explanation
@yash.dwivedi2 жыл бұрын
Glad that you liked it keep coding ✨🔥
@ayushpatel-uw8od2 жыл бұрын
nice explanation.
@yash.dwivedi2 жыл бұрын
Thank you
@chandrasekharmandapalli91812 жыл бұрын
Thanks yash
@yash.dwivedi2 жыл бұрын
Make sure to remember this kind of pattern while solving other dp problems ✨
@chandrasekharmandapalli91812 жыл бұрын
@@yash.dwivedi sure yashh
@devanshtiwari9163 Жыл бұрын
nicely explained
@yash.dwivedi Жыл бұрын
Thank you for your valuable feedback glad that it helped you 🙂
@miscellaneouscontent5078 Жыл бұрын
great explanation
@yash.dwivedi Жыл бұрын
Thank you I am glad that you liked my explanation
@pranavkorhale50892 жыл бұрын
very good explanation
@yash.dwivedi2 жыл бұрын
thank you ❤
@gypsygirlkigypsylife Жыл бұрын
whats memset??
@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
@tanujgarg12362 жыл бұрын
great explanation :)
@yash.dwivedi2 жыл бұрын
Thank you for your valuable feedback keep coding ✨🎉
@fahadabdullah6872 жыл бұрын
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.dwivedi2 жыл бұрын
thank you for your valuable feedback keep coding ✨
@mohitpardeshi24712 жыл бұрын
why is it giving TLE in java?
@tusharnain66522 жыл бұрын
Understood!
@yash.dwivedi2 жыл бұрын
thank you glad that it helped
@rishabhkumar112 жыл бұрын
Thanks
@yash.dwivedi2 жыл бұрын
Hi Rishabh I am glad that you liked my explanation thank you and keep coding ✨🥳🎉
@AayushTayalBCH2 ай бұрын
You are wrong, your time complexity is not O(n^2), it is O(n*k) & the expected is O(N^2),
@parasgarg81872 жыл бұрын
Understood finally
@yash.dwivedi2 жыл бұрын
Glad that it helped you keep coding ✨🔥
@premanand26402 жыл бұрын
understood
@yash.dwivedi2 жыл бұрын
Great 🔥 keep coding ✨
@belive9676 Жыл бұрын
understood sir
@yash.dwivedi Жыл бұрын
Thank you glad that it was helpful
@gladyouseen81602 жыл бұрын
Pretty bad discription in gfg
@yash.dwivedi2 жыл бұрын
I tried to explain the problem statement in detail
@ayush882 жыл бұрын
Now they've improved it. Also, they've made the difficulty level of it as Hard
@prasanth76982 жыл бұрын
great
@yash.dwivedi2 жыл бұрын
glad that you liked it 😊
@devanshkhandelwal54532 жыл бұрын
understood!
@yash.dwivedi2 жыл бұрын
Hi Devansh glad that you liked my explanation keep coding ✨🔥🔥
@divyanshrathore63492 жыл бұрын
Understood
@yash.dwivedi2 жыл бұрын
Great 🔥
@ayush882 жыл бұрын
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.dwivedi2 жыл бұрын
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
@shivamkumarsingh78162 жыл бұрын
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.dwivedi2 жыл бұрын
Are you writing the exact same code?
@harmanjeetsingh35562 жыл бұрын
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; } }
@priyankagrawal99202 жыл бұрын
@@yash.dwivedi yes same here
@alankruthisaieni25622 жыл бұрын
Did you solved it??
@pranavkorhale50892 жыл бұрын
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
@bobbykuhikar55272 жыл бұрын
your code is getting wrong answer in gfg in current testcases
@yash.dwivedi2 жыл бұрын
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); }
@paulomeede19472 жыл бұрын
understood!:)
@yash.dwivedi2 жыл бұрын
great 🔥 keep coding ✨
@saketram6902 жыл бұрын
Could u plz speak slowly ur being very fast not even able understand the question
@yash.dwivedi2 жыл бұрын
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
@ayush882 жыл бұрын
There's an option to control the playback speed. Try watching at 0.75x if you think that's fast.
@funwithfoooood67492 жыл бұрын
The number of "right" >>>>>>
@yash.dwivedi2 жыл бұрын
😅😅
@chiragpagaria73672 жыл бұрын
it is giving index out of bound exception in java plzz help
@yash.dwivedi2 жыл бұрын
please share your code
@shreyasri47742 жыл бұрын
@@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]; }
@arunchoudhary96082 жыл бұрын
Thanks bhai, but ek bat bat ko bar bar sun ke irritate ho gya
@yash.dwivedi2 жыл бұрын
Yes will improve these things but hope that you understood the problem
@thedailycoding2 жыл бұрын
You are so confused. Fixed yourself, what you want to say.
@yash.dwivedi2 жыл бұрын
Please watch the video carefully you will understand everything.
@shubhamgarad657 Жыл бұрын
Did not get what he was trying to say . He himself is confused so much while explaining and was very fast .