Minimum Number of K Consecutive Bit Flips | 3 Approaches | Detailed | Leetcode 995 | 3191

Поділитися
Вставка
  • Опубліковано 29 гру 2024

КОМЕНТАРІ • 94

  • @DevOpskagyaan
    @DevOpskagyaan 6 місяців тому +26

    I can see the hard work in this video. There were few videos only for this problem on UA-cam which i tried watching in the morning. They wasted my time.
    And this legend makes a video of 1 hour to clear all my doubts .
    Guruji 🙏🏻🙏🏻🙏🏻 aap kamaal ho

  • @akshayyn
    @akshayyn 5 місяців тому +1

    I love your explanations! The way you slowly build up intuition from examples really helps. Most other videos just go over the top solutions, without getting into the intuition, which may lead to memorizing solutions.

  • @SlapB0X
    @SlapB0X 6 місяців тому +6

    For the first time, I could solve a Hard question in 15 minutes myself.
    And like you said, it was only possible because I had solved a similar question before.
    In the biweekly, there was a similar question where k was fixed = 3. I figured it out during the contest that it's greedy approach. Even in this question, I instantly knew it was greedy.
    Now, to tackle with variable "k" , I had solved a similar question using "Scanline Algorithm" and instantly I knew how to tackle with "k" .
    The final solution consisted of combining these two, and I had already solved similar questions before, this hard became literally easy-medium.

  • @gauravbhatt6581
    @gauravbhatt6581 6 місяців тому +3

    Tried other UA-camrs videos on this topic, couldn't understand, here you cleared everything

  • @aws_handles
    @aws_handles 6 місяців тому +1

    I believe no one has the patience to cover even every minute points in the explanation . Hats off to you

  • @Dungeon550
    @Dungeon550 6 місяців тому +4

    Only Mik can make this Hard question's explaination an easy one

  • @shreyabajaj4588
    @shreyabajaj4588 6 місяців тому +3

    Oohh thanks a lot for such a clear explanation.....❤ ignore the people who all are saying vdo is lengthy....if they got the concept at the starting they can even do it by themselves rather then complaining

  • @b_01_aditidonode43
    @b_01_aditidonode43 6 місяців тому +2

    Enjoyed learning the intuition of this problem a lot and the best part is that all the three approaches were beautifully connected, now this hard level prob also feels like a cakewalk!! thanks a lot!!

  • @raunakgiri5033
    @raunakgiri5033 6 місяців тому +1

    Watched till 25:15 , then i was able to do it by my own. Thanks for helping me building the intuition.

    • @raunakgiri5033
      @raunakgiri5033 6 місяців тому +1

      *Javascript Code:*
      var minKBitFlips = function(nums, k) {
      let res = 0;
      let currFlipCount = 0;
      for(let i=0;i=0 && nums[i-k]===-1) {
      currFlipCount--;
      }
      if((currFlipCount%2===0 && nums[i]===0) || (currFlipCount%2===1 && nums[i]===1)) {
      if(i+k>nums.length) return -1;
      nums[i] = -1;
      currFlipCount++;
      res++;
      }
      }
      return res;
      };

  • @gui-codes
    @gui-codes 6 місяців тому +43

    subah se pareshan tha. I watched Larry's video but kuch samajh nahi aya. Finally I understood each and every point. thanks a lot . I will also say ->
    NETFLIX ❌
    MIK Lengthy video 💚

    • @aws_handles
      @aws_handles 6 місяців тому +1

      Larry ka nai samajh aata . But banda legend corer hai

    • @adsnehi
      @adsnehi 6 місяців тому +4

      I love netfflix, DSA is very painful for my brain

    • @newglobal7271
      @newglobal7271 6 місяців тому

      @@adsnehi 😂😂😂😂🤣🤣

    • @gui-codes
      @gui-codes 6 місяців тому

      @@adsnehi 🤣

  • @Zomb-zj4ip
    @Zomb-zj4ip 6 місяців тому +2

    bhai tussi great ho . thank you

  • @Harsh_Narayan-zz3lh
    @Harsh_Narayan-zz3lh 6 місяців тому +1

    Thankssss bhaiya, smash aa raha hi apki videos...

  • @imPriyansh77
    @imPriyansh77 6 місяців тому +2

    Excellent explanation of how to use the isFlipped array bhaiya!!! Thanks... I was stuck on this question for a long time!! Please keep uploading

  • @j2f42
    @j2f42 6 місяців тому +1

    very very nice explanation than all others whom i warched this. thanks keep it up

  • @dipakjadhav1579
    @dipakjadhav1579 6 місяців тому +6

    No one on this UA-cam platform , i understand this problem from them but after seeing this video of MIK Bhaiya it is in very interesting way he solved that and I learnt from him

  • @gui-codes
    @gui-codes 6 місяців тому +2

    COPIED FROM VIDEO DESCRIPTION
    ✨ Timelines✨
    00:00 - Introduction
    00:55 - Problem Explanation
    06:57 - Thought Process Approach-1
    44:05 - Coding Approach-1
    46:23 - Approach-2
    49:52 - Coding Approach-2
    50:43 - Approach-3
    01:00:03 - Coding Approach-3
    01:02:03 - Solving Leetcode 3191. Minimum Operations to Make Binary Array Elements Equal to One I

  • @nexus198
    @nexus198 6 місяців тому +2

    Awesome explanation! Keep it up.

  • @gauravbanerjee2898
    @gauravbanerjee2898 6 місяців тому +1

    Jeetu Bhaiya from Kota Factory == MIK Bhaiya from DSA Industry ❤️❤️
    Thank you so much bhaiya itna time leke itna easily samjhane k liye ❤️
    And those who are saying why 1 hour long video, guys please understand it is impossible for bhaiya to explain in this much details with multiple dry runs within 15-20 mins. If you don't have time to watch a 1 hour long video and want to solve a leetcode hard problem just for the sake of maintaining a streak then don't do it . Belive me 1 hour deke dekho regret nahi karoge 😊💯

    • @gui-codes
      @gui-codes 6 місяців тому

      bhai tumhara ye comment instagram and linkedIn me kaafi reach me ja raha hai. MIK posted about this comment 👍

  • @thefinalfit
    @thefinalfit 6 місяців тому +2

    Wow. Solving leetcode 3191 was insane 😮

  • @ravirathore6717
    @ravirathore6717 6 місяців тому +1

    Very nice explanation sir❤

  • @nikhilhaspe2734
    @nikhilhaspe2734 6 місяців тому +1

    Bro your contribution is amazing!
    matlab ye video recording he 1 Hr ka hai to preparation aur apko samajhane me kitna samay aur efforts lage hoge.
    Hats Bro!! 🗿

  • @AryanRaj-mz4ty
    @AryanRaj-mz4ty 6 місяців тому +1

    great explanation

  • @yashkalia2311
    @yashkalia2311 6 місяців тому +1

    i made it myself thankfulllyyyy!!!

  • @bhuvneshvarma9175
    @bhuvneshvarma9175 26 днів тому

    Great video. Thank you!

  • @girishkumar8894
    @girishkumar8894 6 місяців тому +1

    Thank you so much 🙏

  • @GR8_Impact
    @GR8_Impact 6 місяців тому +1

    I solved LC Contest Question with Bruteforce during contest as value of k was 3 :)

  • @iWontFakeIt
    @iWontFakeIt 6 місяців тому +1

    love u guruji!

  • @FanIQQuiz
    @FanIQQuiz 6 місяців тому +3

    Insane explanation 😳🔥
    And 38:13 was awesome 🙌

  • @parvahuja7618
    @parvahuja7618 6 місяців тому +2

    thankyou so much bhaii

  • @nikhilaggarwal9325
    @nikhilaggarwal9325 6 місяців тому

    Great explanation

  • @literally_ankur
    @literally_ankur 6 місяців тому

    Absolute cinema

  • @VaibhavChawla-lz4fi
    @VaibhavChawla-lz4fi 6 місяців тому +1

    Hats off bhai🫡

  • @bunnypubg3475
    @bunnypubg3475 6 місяців тому +1

    Kya baat hai sir, sochraha hu apna bhi ek channel khol lun, padhane se khud ko bhi zyda smjh ata hoga… aap Konsi company mei ho?

  • @englishbetz6748
    @englishbetz6748 6 місяців тому

    bhai ho sake to brute force bhi explain kiya kro taki jo new log h logic banane ka try kr rhe h unko bhi samjh aye chize acche se.

  • @riyasahu7373
    @riyasahu7373 6 місяців тому

    Thanks mik, for such a detailed video, can you also pls discuss the solution for leetcode 3192.

  • @pokeindia5361
    @pokeindia5361 6 місяців тому

    Bhaiya *longest valid parantheses* important q h please video banaiye aapne bola tha ki weekend par banaunga

  • @atharvachikhale7338
    @atharvachikhale7338 6 місяців тому +2

    imp dry run 19:52

  • @A_Myth963
    @A_Myth963 6 місяців тому +1

    we can also use if( (nums[i] + flipcnt ) % 2 == 0) then we will flip

  • @nileshtiwari4143
    @nileshtiwari4143 6 місяців тому +1

    class Solution {
    public:
    int minKBitFlips(vector& nums, int k) {
    int count = 0;
    int n = nums.size();
    for (int i = 0; i < n; i++) {
    if (nums[i] == 0) {
    //check kya i+k > n ho gya hai tb -1 return kr do
    if (i + k > n)
    return -1;
    for (int j = 0; j < k; j++) {
    nums[i + j] ^= 1;
    }
    count++;
    }
    }
    // check humara sara nums 1 ho gya hai kya
    for (int i = 0; i < n; i++) {
    if (nums[i] == 0)
    return -1;
    }
    return count;
    }
    };
    mik bhaia brute force approach🙏🙏🙏🙏

  • @asadneyaz2317
    @asadneyaz2317 6 місяців тому +2

    Please make videos of contest upsolve

  • @gsgpavan1897
    @gsgpavan1897 6 місяців тому

    Hi MIK, I have a doubt regarding approach 3. Why we have used deque instead of queue. Is there any particular reason for using deque because both enqueue and dequeue operations in both queue and deque take same time O(1)..

  • @tanishkumar6682
    @tanishkumar6682 3 місяці тому

    how are we sure that the the way we are flipping the bits (means choosing the leftmost 0 at every step) will give the minimum number of moves.
    Can you please explain that bcz i searched on youtube but i did not got any satisfying answer.

  • @manimanohar_001
    @manimanohar_001 6 місяців тому +1

    Bor bit manipulation playlist pls😎🙏

  • @chitranshjain9714
    @chitranshjain9714 6 місяців тому

    Bhaiya aap dp concept? Kab start karenge

  • @imPriyansh77
    @imPriyansh77 6 місяців тому

    Bhaiya, Approach-2 mai aapne nums ko hii modify kiya hai, toh vo bhi toh space complexity mai count hona chahiye naa ? isFlipped nhi liya lekin data tamper kiya hai, toh space used should also be O(n) in approach-2

  • @nawazthezaifre8870
    @nawazthezaifre8870 6 місяців тому

    Sir, everything was good but please make a length video shorter.

  • @Abhishek-y6i3j
    @Abhishek-y6i3j 6 місяців тому

    bro i am following you for very long time , but one suggestion of mine is don't make too much large video you can explain the logic by one good testcase . We can not spent 1 hrs for one question so please try to make it as short as you can .

    • @codestorywithMIK
      @codestorywithMIK  6 місяців тому +2

      Sure
      I will try to reduce 😇❤️🙏

    • @kapilnitb
      @kapilnitb 6 місяців тому +1

      @@codestorywithMIK esa kr skte ho ki normal km length ke hisab se explain krdo aur fir 10-15min ka detail dry run dal do sath me jinko detailed chahiye aur jinko normal chahiye vo skip kr lenge aur video me bta bhi dena if you have less time you can skip. sayad aap smaj pa rhe ho ki me kya bolna chah rha

    • @Abhishek-y6i3j
      @Abhishek-y6i3j 6 місяців тому

      @@codestorywithMIK thanks 😇

  • @madhurverma1208
    @madhurverma1208 6 місяців тому

    Minimum Operations to Make Binary Array Elements Equal to One II , can we solve this with same approach ??

  • @atheisth2373
    @atheisth2373 6 місяців тому +1

    Kya ye ques hard tha ...No is video ke baad , not at all , it was super easy....

  • @adityaraj-zm7zk
    @adityaraj-zm7zk 6 місяців тому

    bhaiya please provide slides in all the next question please

  • @Abhay14
    @Abhay14 6 місяців тому

    TLE (burite force)
    class Solution {
    public:
    int solve(vector&nums, int i, int temp){
    while(i < temp){
    nums[i] = 1-nums[i];
    i++;
    }
    return 1;
    }
    int minKBitFlips(vector& nums, int k) {
    int count = 0;
    for(int i=0; i

  • @devlpr-nitish
    @devlpr-nitish 6 місяців тому

    ❤❤

  • @sanjai_rs7
    @sanjai_rs7 6 місяців тому

    Can you do it in English?

  • @tusharnanda3885
    @tusharnanda3885 6 місяців тому

    class Solution {
    public:
    int minKBitFlips(vector& nums, int k) {
    int n = nums.size();
    vector pre(n+2 , 0);
    int i = 1, j = k;
    int ans = 0;
    while( j

  • @ujjwalsharma6773
    @ujjwalsharma6773 6 місяців тому +1

    Why is it always google asking these kinda problems🙃

  • @sharadjishukla3297
    @sharadjishukla3297 6 місяців тому

    i was able to come up with brute force only
    // Brute Force
    void toggleBit(vector &nums, int temp)
    {
    if (nums[temp] == 0) nums[temp] = 1;
    else nums[temp] = 0;
    }
    int minKBitFlips(vector &nums, int k)
    {
    int i = 0, j = i + k - 1, count = 0;
    while (j < nums.size())
    {
    if (nums[i] == 0)
    {
    int temp = i;
    count++;
    while (temp

    • @ara3368
      @ara3368 6 місяців тому +1

      No need to create toggle function.
      For toggling use:
      nums[i] = 1 - nums[i]

  • @dayashankarlakhotia4943
    @dayashankarlakhotia4943 6 місяців тому

    it is modified problem of leetcode 3191&3192?🎉❤

    • @codestorywithMIK
      @codestorywithMIK  6 місяців тому +3

      Indeed.
      I have solved 3191 in the end of this video ❤️❤️❤️

    • @ramandeepsingh8464
      @ramandeepsingh8464 6 місяців тому

      @@codestorywithMIK bhiya perfact samjhaya katai zeher explaination

  • @ishowclipsss07
    @ishowclipsss07 6 місяців тому +1

    bhai 20-30 min max rakho video length

    • @gui-codes
      @gui-codes 6 місяців тому +4

      lengthy - more details and more to learn.

    • @ishowclipsss07
      @ishowclipsss07 6 місяців тому +1

      @@gui-codes 🙏🙏par 1 hour bahut jyada hai bhai 30 min should be max

    • @kartikforwork
      @kartikforwork 6 місяців тому

      nope as detailed as possible, new logo ko kafi help hoti h. aur 2-3 approach me ye expected h bor

  • @jeehub041
    @jeehub041 6 місяців тому

    Sir ye question thoda dimaag ghuma dia. 😢

  • @VS-rc4fs
    @VS-rc4fs 6 місяців тому +12

    Bhaiya.. Itni lambi lambi video na banao plss😢

    • @harshtiwari416
      @harshtiwari416 6 місяців тому +8

      Badi video mein hi clear hota

    • @manimanohar_001
      @manimanohar_001 6 місяців тому +6

      Bro Jo content hoga vohi toh banayenge aur HARD bhi toh hai question 😊

    • @ishowclipsss07
      @ishowclipsss07 6 місяців тому +2

      sahi mai bhai

    • @manimanohar_001
      @manimanohar_001 6 місяців тому +3

      @@harshtiwari416 yes

    • @gui-codes
      @gui-codes 6 місяців тому +8

      Bhai,
      lengthy = more details = more to learn.

  • @Engineering.Wallah
    @Engineering.Wallah 6 місяців тому

    //int n=nums.size(),ans=0;
    //for(int i=0;i

  • @UECAshutoshKumar
    @UECAshutoshKumar 6 місяців тому +2

    Thank You!

  • @__ankush_kushwaha
    @__ankush_kushwaha 6 місяців тому +1

    ❤❤❤