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

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

КОМЕНТАРІ • 92

  • @gui-codes
    @gui-codes 2 місяці тому +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 2 місяці тому +1

      Larry ka nai samajh aata . But banda legend corer hai

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

      I love netfflix, DSA is very painful for my brain

    • @newglobal7271
      @newglobal7271 2 місяці тому

      @@adsnehi 😂😂😂😂🤣🤣

    • @gui-codes
      @gui-codes Місяць тому

      @@adsnehi 🤣

  • @user-ub2is4rs4x
    @user-ub2is4rs4x 2 місяці тому +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 Місяць тому +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 2 місяці тому +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.

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

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

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

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

  • @b_01_aditidonode43
    @b_01_aditidonode43 2 місяці тому +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!!

  • @shreyabajaj4588
    @shreyabajaj4588 2 місяці тому +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

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

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

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

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

    • @raunakgiri5033
      @raunakgiri5033 2 місяці тому +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;
      };

  • @priyanshkumar_iitd
    @priyanshkumar_iitd 2 місяці тому +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 2 місяці тому +1

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

  • @nikhilhaspe2734
    @nikhilhaspe2734 2 місяці тому +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!! 🗿

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

    Awesome explanation! Keep it up.

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

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

  • @sauravsuri2188
    @sauravsuri2188 2 місяці тому +1

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

  • @dipakjadhav1579
    @dipakjadhav1579 2 місяці тому +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

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

    bhai tussi great ho . thank you

  • @ugcwithaddi
    @ugcwithaddi 2 місяці тому +2

    Wow. Solving leetcode 3191 was insane 😮

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

    Thank You!

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

    Very nice explanation sir❤

  • @gauravbanerjee2898
    @gauravbanerjee2898 2 місяці тому +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 Місяць тому

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

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

    great explanation

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

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

  • @bunnypubg3475
    @bunnypubg3475 2 місяці тому +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?

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

    love u guruji!

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

    i made it myself thankfulllyyyy!!!

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

    Hats off bhai🫡

  • @pokeindia5361
    @pokeindia5361 2 місяці тому

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

  • @englishbetz6748
    @englishbetz6748 2 місяці тому

    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.

  • @literally_ankur
    @literally_ankur 2 місяці тому

    Absolute cinema

  • @nileshtiwari4143
    @nileshtiwari4143 2 місяці тому +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 2 місяці тому +2

    Please make videos of contest upsolve

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

    Thank you so much 🙏

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

    imp dry run 19:52

  • @gui-codes
    @gui-codes 2 місяці тому +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

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

    thankyou so much bhaii

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

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

  • @gsgpavan1897
    @gsgpavan1897 2 місяці тому

    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)..

  • @riyasahu7373
    @riyasahu7373 2 місяці тому

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

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

    bhaiya please provide slides in all the next question please

  • @Thriftinghai
    @Thriftinghai 2 місяці тому +3

    Insane explanation 😳🔥
    And 38:13 was awesome 🙌

  • @nikhilaggarwal9325
    @nikhilaggarwal9325 2 місяці тому

    Great explanation

  • @priyanshkumar_iitd
    @priyanshkumar_iitd 2 місяці тому

    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

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

    Bor bit manipulation playlist pls😎🙏

  • @madhurverma1208
    @madhurverma1208 2 місяці тому

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

  • @nawazthezaifre8870
    @nawazthezaifre8870 2 місяці тому

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

  • @user-xe1tn9oy5d
    @user-xe1tn9oy5d 2 місяці тому

    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  2 місяці тому +2

      Sure
      I will try to reduce 😇❤️🙏

    • @kapilnitb
      @kapilnitb 2 місяці тому +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

    • @user-xe1tn9oy5d
      @user-xe1tn9oy5d 2 місяці тому

      @@codestorywithMIK thanks 😇

  • @tusharnanda3885
    @tusharnanda3885 2 місяці тому

    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

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

    ❤❤❤

  • @sanjai_rs7
    @sanjai_rs7 2 місяці тому

    Can you do it in English?

  • @chitranshjain9714
    @chitranshjain9714 2 місяці тому

    Bhaiya aap dp concept? Kab start karenge

  • @Abhay14
    @Abhay14 2 місяці тому

    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

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

    Why is it always google asking these kinda problems🙃

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

    ❤❤

  • @sharadjishukla3297
    @sharadjishukla3297 2 місяці тому

    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 2 місяці тому +1

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

  • @dayashankarlakhotia4943
    @dayashankarlakhotia4943 2 місяці тому

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

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

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

    • @ramandeepsingh8464
      @ramandeepsingh8464 2 місяці тому

      @@codestorywithMIK bhiya perfact samjhaya katai zeher explaination

  • @jeehub041
    @jeehub041 2 місяці тому

    Sir ye question thoda dimaag ghuma dia. 😢

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

    bhai 20-30 min max rakho video length

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

      lengthy - more details and more to learn.

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

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

    • @kartikforwork
      @kartikforwork 2 місяці тому

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

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

    Bhaiya.. Itni lambi lambi video na banao plss😢

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

      Badi video mein hi clear hota

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

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

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

      sahi mai bhai

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

      @@harshtiwari416 yes

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

      Bhai,
      lengthy = more details = more to learn.

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

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