Minimum Cost to Hire K Workers - Leetcode 857 - Python

แชร์
ฝัง
  • เผยแพร่เมื่อ 11 ธ.ค. 2024

ความคิดเห็น • 79

  • @NeetCodeIO
    @NeetCodeIO  7 หลายเดือนก่อน +94

    Sorry I missed so many days lately. I'll be much more consistent going forward. You can count on it!

    • @metarus208
      @metarus208 7 หลายเดือนก่อน +1

      pls make more coding content going forward

    • @yang5843
      @yang5843 7 หลายเดือนก่อน +3

      Would a financial incentive motivate you to make videos the day of?

    • @diaaabusaada910
      @diaaabusaada910 7 หลายเดือนก่อน +5

      We've missed you my friend😉

    • @gryffindor6409
      @gryffindor6409 7 หลายเดือนก่อน +1

      ok

    • @ik6071
      @ik6071 7 หลายเดือนก่อน

      is it still possible to upload videos on the days you missed?

  • @asmodeus159
    @asmodeus159 7 หลายเดือนก่อน +44

    Companies asking this question in Interview ❌
    Companies implementing this ✅

  • @venkateshnaidu2133
    @venkateshnaidu2133 7 หลายเดือนก่อน +20

    There's no way I can come up with this logic in an interview

    • @prakhargupta4320
      @prakhargupta4320 7 หลายเดือนก่อน

      may be with some help from the interviewer

    • @visintel
      @visintel 7 หลายเดือนก่อน

      Practice heap medium level questions. It helps me to look at solutions when I’m stuck. You’re right, it’s hard to come up with this but it gets easier when you practice and study solutions. You’ll be stuck less and less with practice

  • @tusharsingh3480
    @tusharsingh3480 7 หลายเดือนก่อน +21

    3:20 "if we wanna be full capitalists"
    - Neetcode

  • @rawatvinod4164
    @rawatvinod4164 7 หลายเดือนก่อน +2

    this one got me confused for days but your explanations always helps me understand every problem better.

  • @iliadmitriev01
    @iliadmitriev01 7 หลายเดือนก่อน +11

    *capitalists have left the conversation
    you can get 20 units of work for the half price (50)
    no, I can get 15 units for the double price (105)

  • @antm9957
    @antm9957 7 หลายเดือนก่อน +2

    Thanks!
    Don't disappear for so long.

  • @kareemadesola6522
    @kareemadesola6522 7 หลายเดือนก่อน

    Thank you for significantly reducing the time I would have spent on the editorial

  • @EduardYudinkov
    @EduardYudinkov 7 หลายเดือนก่อน +2

    Thank you for the best explanation ever! After the first 4-5 minutes of the video, I was able to figure out a solution on my own.

  • @JamesBond-mq7pd
    @JamesBond-mq7pd 7 หลายเดือนก่อน

    I have tried to solve this task for 2 hours! Unreal problem!

  • @krit2038
    @krit2038 7 หลายเดือนก่อน +6

    What about the case when the max value that you pop from the heap is the value that you have just added, in that case would it still be valid to evaluate res using the current rate?

    • @aadharjain313
      @aadharjain313 7 หลายเดือนก่อน +1

      same doubt??

    • @siddharth-gandhi
      @siddharth-gandhi 7 หลายเดือนก่อน

      my guess is you can prove that total_quality * rate would be less than the res at that time, so doesn't matter. tho i havent proved lol

    • @pogman1
      @pogman1 7 หลายเดือนก่อน +1

      It's because since we know that the rates are increasing as we loop through, you can guarantee that total_quality * rate will be larger.
      I.e.
      the total quality was 10,
      we add a new guy with a higher rate,
      if we pop this guy because he has a higher quantity too, we'll basically be doing 10* higher rate which will be >= 10*prev rate

    • @aadharjain313
      @aadharjain313 7 หลายเดือนก่อน

      @@pogman1 but that won't be the minimum cost then ?

    • @pogman1
      @pogman1 7 หลายเดือนก่อน

      @@aadharjain313 it would be since you take the minimum. In the example I gave it would be min(10* prev rate, 10*higher rate) which is guaranteed to be 10*prev rate bc of what I mentioned

  • @lakshmanprabhu6722
    @lakshmanprabhu6722 7 หลายเดือนก่อน

    Best explanation!! Thank you

  • @taqihaider9879
    @taqihaider9879 7 หลายเดือนก่อน +1

    Best explanation !

  • @LimpBizkit195
    @LimpBizkit195 7 หลายเดือนก่อน +1

    I think the time complexity can be simplified as O(nlogn) since n >= k

  • @JRK_RIDES
    @JRK_RIDES 7 หลายเดือนก่อน

    Thanks man, your videos help a lot.

  • @sirajussalekin9239
    @sirajussalekin9239 7 หลายเดือนก่อน +5

    this has to be the most convoluted explanation of K workers problem I've heard 😅

  • @rostislav_engineer
    @rostislav_engineer 7 หลายเดือนก่อน

    thank you neetcode

  • @krateskim4169
    @krateskim4169 7 หลายเดือนก่อน

    Awesome explanation

  • @Sarwaan001
    @Sarwaan001 7 หลายเดือนก่อน

    This is very similar to a question that we ask at Disney+

  • @ChickenWangTFT
    @ChickenWangTFT 7 หลายเดือนก่อน

    thank you king

  • @kwakukusi4094
    @kwakukusi4094 7 หลายเดือนก่อน

    thanks, I did not even understand the question

  • @aritrobiswas6439
    @aritrobiswas6439 7 หลายเดือนก่อน

    What I learned today is being too good at your job is not necessarily going to get you a job.

  • @Munchen888
    @Munchen888 7 หลายเดือนก่อน

    Please help me with this question. I'm going to use sliding window starting from 1 to len(quality) . From heap I'm going to pop when : while heap and len(heap) > k, heapq.heappop(heap). But I don't realize how to check when I am heappush to heap?

  • @juanmacias5922
    @juanmacias5922 7 หลายเดือนก่อน +2

    I think what makes this problem hard is the lack of explanation of what is happening in the question, and solutions haha

    • @ShikaIE
      @ShikaIE 7 หลายเดือนก่อน +2

      Yes the question is ridiculously confusing

    • @juanmacias5922
      @juanmacias5922 7 หลายเดือนก่อน

      @@ShikaIE right! Even if they just alluded to "grading on a curve" lol

  • @CS_n00b
    @CS_n00b 6 หลายเดือนก่อน

    very cool

  • @barnetthan9391
    @barnetthan9391 7 หลายเดือนก่อน

    thanks goat

  • @torvasdh
    @torvasdh 7 หลายเดือนก่อน +1

    This is somehow worse than current industry pay scaling, so expect to see this adopted next year.

  • @nikhilanand984
    @nikhilanand984 7 หลายเดือนก่อน

    while we are subtracting the maximum quality (since it's a maxheap) when the size of the heap becomes > k (k + 1), suppose our current quality is the maximum quality and we subtracted it from our total quality, but we are still using it's rate (which will be the maximum rate till now since rates are stored in ascending order) to get the minimum total wage by multiplying it with the total quality till now after the subtraction of the current maximum quality. basically we are multiplying the rate of that current quality with the total previous quality we already calculated an answer for. though this won't change our minimum answer till now since we are multiplying it with a greater rate, but still this is wrong. maybe we can also maintain a maximum quality and whenever we are popping the maximum quality, we won't use its rate to find the answer.

    • @MykolaPavluchynskyi
      @MykolaPavluchynskyi 7 หลายเดือนก่อน

      Yes, this bothers me as well. Maybe we should put to the heap not just quality - but pair we are processing. If if the pair we have to remove - is the same we just added - just skip it...

    • @MykolaPavluchynskyi
      @MykolaPavluchynskyi 7 หลายเดือนก่อน

      Probably wiser would be to delete the max element right after processing with size k, that way don't have such situation at all

    • @MykolaPavluchynskyi
      @MykolaPavluchynskyi 7 หลายเดือนก่อน

      Queue qualityQueue = new PriorityQueue((a,b) -> Integer.compare(b.quality, a.quality));
      for (Worker worker : workers) {
      qualityQueue.add(worker);
      qualitySum += worker.quality;
      if (qualityQueue.size() == k) {
      final double biggestRateByNow = worker.ratePerQuality;
      final double resultCandidate = qualitySum * biggestRateByNow;
      result = Math.min(result, resultCandidate);
      Worker biggestQualityWorker = qualityQueue.poll();
      qualitySum -= biggestQualityWorker.quality;
      }
      }

  • @Techgether
    @Techgether 7 หลายเดือนก่อน

    Hi navdeep, any good resource recommendations to learn how to determine space and time complexity for my own created solution? and also any website that can explains DSA terminology well?

    • @mariansalam
      @mariansalam 7 หลายเดือนก่อน +1

      College

    • @Techgether
      @Techgether 7 หลายเดือนก่อน

      @@mariansalam damn

  • @_sonu_
    @_sonu_ 7 หลายเดือนก่อน +1

    Hi Bro Are you haring ?

  • @copilotcoder
    @copilotcoder 7 หลายเดือนก่อน +1

    There is a problem, we are calculating total_quality * rate, but one of the individual wage might hit the wage cap and must be discarded?Can you explain sir

    • @il5083
      @il5083 7 หลายเดือนก่อน +1

      It's sorted, so the previous rates (wage/quality) are lower, therefore their quality * new_rate would be >= minimum wage.

  • @pastori2672
    @pastori2672 7 หลายเดือนก่อน

    i got TLE am i a failiure ?

  • @ravatez
    @ravatez 7 หลายเดือนก่อน

    You are late man! I solved it but in different way. Keep posting. Don't break streak 😂

  • @orcus_irl
    @orcus_irl 7 หลายเดือนก่อน

    how is he using his pen(whatever) to write on browser bro can someone tell me? is there any software that is smooth as he is using right now?
    I am open for suggestion regarding software

    • @MrLeyt1125
      @MrLeyt1125 7 หลายเดือนก่อน

      No, he drawing with a real pen on real monitor and takes video with his phone. New video = new monitor, please donate for a new vids

    • @manuelscott9078
      @manuelscott9078 7 หลายเดือนก่อน +1

      paint 3d

  • @vishaalkumaranandan2894
    @vishaalkumaranandan2894 7 หลายเดือนก่อน

    I am still in some kind of confusion with the code

  • @chien-yucode992
    @chien-yucode992 7 หลายเดือนก่อน

    🥳🥳🥳

  • @yogendrakesharwani3650
    @yogendrakesharwani3650 5 หลายเดือนก่อน

    When he does (10+5)*7=105 i was like 💀🤡☠️

  • @Benstokes555
    @Benstokes555 7 หลายเดือนก่อน +1

    AHH DIDNT GET IT

  • @rajsuriyang3427
    @rajsuriyang3427 7 หลายเดือนก่อน

    I didn't even understand this question

  • @supremoluminary
    @supremoluminary 7 หลายเดือนก่อน

    Who just deleted my comment?

  • @supremoluminary
    @supremoluminary 7 หลายเดือนก่อน

    Put my deleted comment back up.

    • @NeetCodeIO
      @NeetCodeIO  7 หลายเดือนก่อน

      pretty sure yt auto deletes some, usually because of urls

    • @supremoluminary
      @supremoluminary 7 หลายเดือนก่อน

      @@NeetCodeIO I put it up four times. The fourth time, it seems to have stuck. We are no longer safe, there is a link to GitHub.

  • @toseefalikhan2297
    @toseefalikhan2297 7 หลายเดือนก่อน +1

    Best explanation!