BS-13. Minimum days to make M bouquets | Binary Search
HTML-код
- Опубликовано: 8 фев 2025
- Problem Link: bit.ly/43ScDRY
Notes/C++/Java/Python codes: takeuforward.o...
We have solved the problem, and we have gone from brute force and ended with the most optimal solution. Every approach's code has been written in the video itself. Also, we have covered the algorithm with intuition.
Full Course: bit.ly/tufA2ZYt
You can follow me across social media, all my handles are below:
Linkedin/Instagram/Telegram: linktr.ee/take...
0:00 Introduction of Course
5 mins into the video and I knew exactly how to code it up! Cheers man. This guy has some serious skills!
That's candidate master for ya.
gawd
Not a easy problem to understand directly by reading it.. Thanks you have made it very simple.
bro literally I coded it down myself...just came here to understand the problem coz it was too complex to understand. Now i can code medium range problems by myself....sooner or later I will be able to understand the problem as well as we code further
Ya I am also facing same problem, I am also not able to understand the problem
@@danielhaag756 tell me one thing bro, i watched the video till 4-5 mins, and then i noticed that we would be doing it same way as we did in KOKO bananas, so is it fine that i watched the video till this???
how much time you takes to reach at that level and what are the hacks u have learnt that helped u ??
there is one tip i will give u see there two types of cases either you are able to solve a problem either you are not when when you are not able to solve a problem first make notes of it after watching tutorial of it and then do the same question by yourself after 7 days if u are able to do it in by your own without copying that means u actually grabbed the concept of it and it will also boost your confidence @@Vivekkumar-zc7mz
@@Vivekkumar-zc7mz there are no hacks
My strategy of following the striver sheet is that at first I try to solve the question myself and if I am unable to then I come to videos for understanding,
After reading this question on leetcode, I was clueless even about the question itself 1:35 mins into video and I have solved it on my own.
Is this magic or something? 😅
Thank you bhaiyaaaaaaaaaaa❤
exact same thing but at 2:15
i know right!
Good evening sir, this is Arijit from Kolkata. Your videos are super amazing and helpful, getting confidence in attempting leetcode problems...could even solve few of them.
Sir the purpose of this comment is, as you said in one of the TEDX videos that in your college days you used to earn through blogging...may you please suggest me some tips, how can I earn through blogging, and recommend some blogging websites from where I can earn too....
currently 259 questions kar liye hai apki sheet ke , dekhte hai aur kitne kar pata hu , quality of questions awesome hai bhaiya , monotnic stacks m aur sliding windows m toh kya tagde question daal rakhe hai every question improves thinking in other direction. Ab bas graphs , greedy , trees , heaps aur strings bach raha hai usme bhi umeed hai bahut shandar questions honge. karta hu bhiaya dekhte hai kab tak khatam hogi , jab binary search kar raha tha tab i really wanted ki yeh videos ajaye but jo khud grind kiya na woh alag hi satisfaction tha. kabhi bhulayega nahi yeh questions , jitna video dekh ke bhool jaate hai. ek video ke peeche itni mehnat hoti hai itni research hoti hai , samajh agya. Waise app thoda rest bhi karliya karo aur jyada soya karo , peace of mind jyada important hai. Thank you for free knowledge 😊.
nunnu touching comment
@@krishnaramtripathi958 thanks bro BTW completed the sheet :).
@@pulkitjain5159Bro Is it possible to connect with you? I have few doubts regarding dsa.
@@pulkitjain5159 bro from where did u learn dsa
@@pulkitjain5159 hi are u placed now??
Thank u striver sir. Really an inspiration to me.
U know what ,I feel NOW very confident in solving the questions.
Bas logic samajh aa jaye to code to bas 5 min lagta hai.
2 days complete , now at 13th video of this playlist .
Little by little feeling confident in solving DSA problems. Thank you man!!
Saw the first 9 minutes of the video and able to code it by myself. Such is the clarity in his explanations. Thanks Striver.
man i finally coded a question you designated as hard by myself...your intuition helped me a lot you made me realise how to think through a question....thanks a lot
Finally I completed the first medium problem by myself, without understanding the approach first from the video. 😀 Thanks for the guidance Raj bhaiya (Striver). 🙏
i didnt understand the problm to jumping into this lecture . after some time i understood but didnot get the intiution continued watching silw scrolling comment . Saw many have done after 2 min of watching lecture. i was on 10: 00 aproxx stopped and solved by myself . Almost got the result except two minor mistkes . Thnks STRIVER.😍
at 3:53 I understood it is binary search, implemented on my own using binary search + sliding window ....Made some modification to sliding window as window cannot be overlapped to count consecutive k elements, got overflow error while checking n< m*k ... typecasted to n< (long) m*k ,finally passed all test cases after 40min.....
Edit:
after submiting i watched video and realised its easier to implement possible function , same complexity as sliding window but i could probably code you idea faster and it is simpler XD.
Grateful for free knowledge from you.
I could not wrap my head around this problem until I saw your video, thank you!
Coded myself in 3 minutes. Thanks for great teaching.
amazing teacher of dsa.....
Only 5 mins watching and solved the Question!!
Striver you beauty!!!!!!!!!!!!!!!!!!!!!!!
you are a great striver love the way you approach problems ....... Clearly Understood
I wasn't able to solve mid level binary search problems. Now i can easily. I can't thank you enough
Solved this today, 13 Dec 2023. Thank you man for making the problem a cakewalk.
It becomes easier to understand when Striver starts explaining
A small optimization: defining long longs and checking for the condition m*k>n is not necessary,
once the binary search finishes, if m*k>n is true, then our Low pointer would point at n.
Hence at last we can just simple write:
if (low==n) return -1;
else return low;
It really isn't an optimization per se. Because if we calculate it beforehand we dont need to apply binary search at all , if(m*k>n) is true then it will straight away throw -1 whereas in your approach it would still take O(N*logN) , because it will go into binary search loop nevertheless.
how is it an optimization lol? it ulta increases the Tc.
I couldn't make the logic for adjacent code,but now i can. thanks raj for this one
Understood everything clearly and was able to code it myself. Thanks a lot Striver :)
UNDERSTOOD ! Instead, I solved it by my own before watching the video... Thanks to you
Striver always on fire🔥❤ excellently explained 😊
Wow !! I am able to understand the intuition behind these problems. Excellent Problem and awesome explanation.
I forgot to write noOfB += (cnt / k); again outside the loop in possible function, and it took me so much time to solve it myself, but i was able to do it after some time. So much thanks!
Thanks it wasn't an easy problem statement to understand but after your explanation I was able to solve it on my own. 🙏
Thank you striver bro I am from the south india (Tamilnadu). You are the consistency person keep it up and post videos as well. These are helpfull for us. Please made videos like this consistency.Thank you
Thank you so much Dada, i was able to solve it on my own by taking help from the previous question intuition
Best! Best! Bestest explanation ever!!
Was able to code this on my own, thanks and understood clearly!
Understood! Amazing explanation as always, thank you very very much for your continuous effort!!
isPossible() function and taking long long as val = m*k to avoid overflow error is too tricky and helpful to understand the question clearly
could code it by myself before reading the explanation, thanks!
Thank you Striver bhaiya!
watched the video for 2 minutes to understand what the problem is about then decided to solve it myself and viola, idid itttt on my ownnnnn!!!!!!!
thanks to you was able to do the problem on my own.
thanks for the explanation definitely helped me to understand the problem!
Minor optimization in TC: Instead of taking the complete range from lowest element to the highest element, just take unique sorted elements from the array for the binary search.
This will reduce the log(max-min) complexity part to log(N),
however the space complexity will change to O(N) from O(1)
What a Great Approach Man
Thank you so much for the super clear explanation 🙂
Great explanation. TC should include an additional O(n) to find range.
yes correct
The explanation is so good
understood
Thank you striver for such an amazing explanation...
wow! very well explained.
Best Solution!
Hi striver At 20:20 , you directly ignored less than 10 days, but what if bloom days array was something like this [7,7,7,7,13,11,12,7,7,7] In this case 2 bouquets are possible for minimum of 7 days, but we have ignored 7 days in binary search.
Bro, in your case 10 days is a possible ans, so according to binary search the ans will store 10 and try to search for a min day than 10 (right half is ignored). Hope it helps
amazing explantion i was able to do it on my own. 😊
Understand bro great teaching 👍
Amazing Explanation 🙌❤
it becomes easy when striver explains💀
I didn't understand before I looked at the problem and watched the final boss video and solved in 4 mins he is in God level in explaining 😅
Understood :)
Was thinking this question to be of DP, couldn't solve
Jan'4, 2024 02:54 pm
understood. thank you very much for this series.
Done on 15 Jan 2025 at 13:33
Place : Study Room 2 , Hostel 5 , IIT Bombay
understood very well sir
Completed the code without watching the video all by myself
Greato🎉
🏆 🏆
Understood completely, tysmm striverrrrrr
Better than Paid Courses
Good problem very well explained. Thanks.
why cant we do it in a way where the possible() function would return the bouquets we are able to form and then we deal with what to do in the binary search?
Done and Dusted !!!
understood 😇
Understood, coded it on my own, thanks!!
Understood Very Well!
thank you striver understood everything
you are great sir
Thank you sir
Love from Mysore ❤
Understood 👍
Best intuition
thank you!
the opposite polarity is very useful.
Understood :) Thank you so much
Keep going thanks alot
Understood sir!
Understood✅🔥🔥
understood bhaiya
UNDERSTOOD 🥰
happy birthday bhai bhai
Thank you bhaiya
Understood !! 😎😎
Thank you
Understood ❤
amazing sir
Habibi tussi mast bideo banate ho
Understood!
weel i am thinking this a dp prblem , where we return min( take , notake ) , where take means taking three conseutive days
he is a fire❤🔥❤🔥❤🔥❤🔥❤🔥
UNDERSTOOD;
Legendary boss
if i may once you've found out 12 (mid) is possible, why do you still need to eliminate the ranges and continue looking when it's safe to assume that since you've ordered the list the first number you found possible would be the smallest possible and u got ur answer already?
Understood!
thanks for the video mate
understood!!
i have an doubt as calculated time complexity is O(n log(min-max+1)) but initially we have to find the max and min which takes O(n) then why aren't we adding that to our final TC?
Time Complexity : [ O(n) +O(n) + O(n log(max-min+1)) ] approximately equals to O(n log(max-min+1) but for Brute force it is O( (max-min+1)*n).
is it possible that it return an value which is not present in array.
17:33 AND 24:20
Can someone please help me understand what is polarity concept striver was talking about?
Initially low was on the not possible side and high on the possible side. This is polarity. Now as the binary search ends polarity changes i.e. low will be on possible and high on not possible.