@@ -91344,48 +91344,28 @@ <h3 id="solution-1">Solution 1</h3>
9134491344<span class="normal">19</span>
9134591345<span class="normal">20</span>
9134691346<span class="normal">21</span>
91347- <span class="normal">22</span>
91348- <span class="normal">23</span>
91349- <span class="normal">24</span>
91350- <span class="normal">25</span>
91351- <span class="normal">26</span>
91352- <span class="normal">27</span>
91353- <span class="normal">28</span>
91354- <span class="normal">29</span>
91355- <span class="normal">30</span>
91356- <span class="normal">31</span>
91357- <span class="normal">32</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">class</span> <span class="nc">Solution</span><span class="w"> </span><span class="p">{</span>
91347+ <span class="normal">22</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">class</span> <span class="nc">Solution</span><span class="w"> </span><span class="p">{</span>
9135891348<span class="w"> </span><span class="kd">public</span><span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="nf">mincostToHireWorkers</span><span class="p">(</span><span class="kt">int</span><span class="o">[]</span><span class="w"> </span><span class="n">quality</span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="o">[]</span><span class="w"> </span><span class="n">wage</span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">k</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
9135991349<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">n</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">quality</span><span class="p">.</span><span class="na">length</span><span class="p">;</span>
91360- <span class="w"> </span><span class="n">Pair</span><span class="o">[]</span><span class="w"> </span><span class="n">t</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">Pair</span><span class="o">[</span><span class="n">n</span><span class="o">]</span><span class="p">;</span>
91350+ <span class="w"> </span><span class="n">Pair</span><span class="o"><</span><span class="n">Double</span><span class="p">,</span><span class="w"> </span><span class="n">Integer</span><span class="o">> []</span><span class="w"> </span><span class="n">t</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">Pair</span><span class="o">[</span><span class="n">n</span><span class="o">]</span><span class="p">;</span>
9136191351<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="o"><</span><span class="w"> </span><span class="n">n</span><span class="p">;</span><span class="w"> </span><span class="o">++</span><span class="n">i</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
91362- <span class="w"> </span><span class="n">t</span><span class="o">[</span><span class="n">i</span><span class="o">]</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">Pair</span><span class="p">(</span><span class="n">quality</span><span class="o">[</span><span class="n">i</span><span class="o">]</span><span class="p">,</span><span class="w"> </span><span class="n">wage </span><span class="o">[</span><span class="n">i</span><span class="o">]</span><span class="p">);</span>
91352+ <span class="w"> </span><span class="n">t</span><span class="o">[</span><span class="n">i</span><span class="o">]</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">Pair</span><span class="o"><></span><span class=" p">(( </span><span class="kt">double</span><span class="p">)</span><span class="w"> </span><span class=" n">wage</span><span class="o">[</span><span class="n">i</span><span class="o">]</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="n"> quality</span><span class="o">[</span><span class="n">i</span><span class="o">]</span><span class="p">,</span><span class="w"> </span><span class="n">quality </span><span class="o">[</span><span class="n">i</span><span class="o">]</span><span class="p">);</span>
9136391353<span class="w"> </span><span class="p">}</span>
91364- <span class="w"> </span><span class="n">Arrays</span><span class="p">.</span><span class="na">sort</span><span class="p">(</span><span class="n">t</span><span class="p">,</span><span class="w"> </span><span class="p">(</span><span class="n">a</span><span class="p">,</span><span class="w"> </span><span class="n">b</span><span class="p">)</span><span class="w"> </span><span class="o">-></span><span class="w"> </span><span class="n">Double</span><span class="p">.</span><span class="na">compare</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="na">x </span><span class="p">,</span><span class="w"> </span><span class="n">b</span><span class="p">.</span><span class="na">x </span><span class="p">));</span>
91354+ <span class="w"> </span><span class="n">Arrays</span><span class="p">.</span><span class="na">sort</span><span class="p">(</span><span class="n">t</span><span class="p">,</span><span class="w"> </span><span class="p">(</span><span class="n">a</span><span class="p">,</span><span class="w"> </span><span class="n">b</span><span class="p">)</span><span class="w"> </span><span class="o">-></span><span class="w"> </span><span class="n">Double</span><span class="p">.</span><span class="na">compare</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="na">getKey </span><span class="p">() ,</span><span class="w"> </span><span class="n">b</span><span class="p">.</span><span class="na">getKey </span><span class="p">() ));</span>
9136591355<span class="w"> </span><span class="n">PriorityQueue</span><span class="o"><</span><span class="n">Integer</span><span class="o">></span><span class="w"> </span><span class="n">pq</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">PriorityQueue</span><span class="o"><></span><span class="p">((</span><span class="n">a</span><span class="p">,</span><span class="w"> </span><span class="n">b</span><span class="p">)</span><span class="w"> </span><span class="o">-></span><span class="w"> </span><span class="n">b</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="n">a</span><span class="p">);</span>
91366- <span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">ans</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">1e9 </span><span class="p">;</span>
91356+ <span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">ans</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">1e18 </span><span class="p">;</span>
9136791357<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">tot</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span>
9136891358<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="kd">var</span><span class="w"> </span><span class="n">e</span><span class="w"> </span><span class="p">:</span><span class="w"> </span><span class="n">t</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
91369- <span class="w"> </span><span class="n">tot</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="n">e</span><span class="p">.</span><span class="na">q </span><span class="p">;</span>
91370- <span class="w"> </span><span class="n">pq</span><span class="p">.</span><span class="na">offer</span><span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="na">q </span><span class="p">);</span>
91359+ <span class="w"> </span><span class="n">tot</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="n">e</span><span class="p">.</span><span class="na">getValue </span><span class="p">() ;</span>
91360+ <span class="w"> </span><span class="n">pq</span><span class="p">.</span><span class="na">offer</span><span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="na">getValue </span><span class="p">() );</span>
9137191361<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">pq</span><span class="p">.</span><span class="na">size</span><span class="p">()</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">k</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
91372- <span class="w"> </span><span class="n">ans</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">Math</span><span class="p">.</span><span class="na">min</span><span class="p">(</span><span class="n">ans</span><span class="p">,</span><span class="w"> </span><span class="n">tot</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">e</span><span class="p">.</span><span class="na">x </span><span class="p">);</span>
91362+ <span class="w"> </span><span class="n">ans</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">Math</span><span class="p">.</span><span class="na">min</span><span class="p">(</span><span class="n">ans</span><span class="p">,</span><span class="w"> </span><span class="n">tot</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">e</span><span class="p">.</span><span class="na">getKey </span><span class="p">() );</span>
9137391363<span class="w"> </span><span class="n">tot</span><span class="w"> </span><span class="o">-=</span><span class="w"> </span><span class="n">pq</span><span class="p">.</span><span class="na">poll</span><span class="p">();</span>
9137491364<span class="w"> </span><span class="p">}</span>
9137591365<span class="w"> </span><span class="p">}</span>
9137691366<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">ans</span><span class="p">;</span>
9137791367<span class="w"> </span><span class="p">}</span>
9137891368<span class="p">}</span>
91379-
91380- <span class="kd">class</span> <span class="nc">Pair</span><span class="w"> </span><span class="p">{</span>
91381- <span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">x</span><span class="p">;</span>
91382- <span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">q</span><span class="p">;</span>
91383-
91384- <span class="w"> </span><span class="n">Pair</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">q</span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">w</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
91385- <span class="w"> </span><span class="k">this</span><span class="p">.</span><span class="na">q</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">q</span><span class="p">;</span>
91386- <span class="w"> </span><span class="k">this</span><span class="p">.</span><span class="na">x</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="kt">double</span><span class="p">)</span><span class="w"> </span><span class="n">w</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="n">q</span><span class="p">;</span>
91387- <span class="w"> </span><span class="p">}</span>
91388- <span class="p">}</span>
9138991369</code></pre></div></td></tr></table></div>
9139091370</div>
9139191371<div class="tabbed-block">
@@ -91422,7 +91402,7 @@ <h3 id="solution-1">Solution 1</h3>
9142291402<span class="w"> </span><span class="p">}</span>
9142391403<span class="w"> </span><span class="n">sort</span><span class="p">(</span><span class="n">t</span><span class="p">.</span><span class="n">begin</span><span class="p">(),</span><span class="w"> </span><span class="n">t</span><span class="p">.</span><span class="n">end</span><span class="p">());</span>
9142491404<span class="w"> </span><span class="n">priority_queue</span><span class="o"><</span><span class="kt">int</span><span class="o">></span><span class="w"> </span><span class="n">pq</span><span class="p">;</span>
91425- <span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">ans</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">1e9 </span><span class="p">;</span>
91405+ <span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">ans</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">1e18 </span><span class="p">;</span>
9142691406<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">tot</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span>
9142791407<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="k">auto</span><span class="o">&</span><span class="w"> </span><span class="p">[</span><span class="n">x</span><span class="p">,</span><span class="w"> </span><span class="n">q</span><span class="p">]</span><span class="w"> </span><span class="o">:</span><span class="w"> </span><span class="n">t</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
9142891408<span class="w"> </span><span class="n">tot</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="n">q</span><span class="p">;</span>
@@ -91480,7 +91460,7 @@ <h3 id="solution-1">Solution 1</h3>
9148091460<span class="w"> </span><span class="p">}</span>
9148191461<span class="w"> </span><span class="nx">sort</span><span class="p">.</span><span class="nx">Slice</span><span class="p">(</span><span class="nx">t</span><span class="p">,</span><span class="w"> </span><span class="kd">func</span><span class="p">(</span><span class="nx">i</span><span class="p">,</span><span class="w"> </span><span class="nx">j</span><span class="w"> </span><span class="kt">int</span><span class="p">)</span><span class="w"> </span><span class="kt">bool</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nx">t</span><span class="p">[</span><span class="nx">i</span><span class="p">].</span><span class="nx">x</span><span class="w"> </span><span class="p"><</span><span class="w"> </span><span class="nx">t</span><span class="p">[</span><span class="nx">j</span><span class="p">].</span><span class="nx">x</span><span class="w"> </span><span class="p">})</span>
9148291462<span class="w"> </span><span class="nx">tot</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="mi">0</span>
91483- <span class="w"> </span><span class="kd">var</span><span class="w"> </span><span class="nx">ans</span><span class="w"> </span><span class="kt">float64</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="mf">1e9 </span>
91463+ <span class="w"> </span><span class="kd">var</span><span class="w"> </span><span class="nx">ans</span><span class="w"> </span><span class="kt">float64</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="mf">1e18 </span>
9148491464<span class="w"> </span><span class="nx">pq</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="nx">hp</span><span class="p">{}</span>
9148591465<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="nx">_</span><span class="p">,</span><span class="w"> </span><span class="nx">e</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="k">range</span><span class="w"> </span><span class="nx">t</span><span class="w"> </span><span class="p">{</span>
9148691466<span class="w"> </span><span class="nx">tot</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="nx">e</span><span class="p">.</span><span class="nx">q</span>
@@ -91543,6 +91523,11 @@ <h3 id="solution-1">Solution 1</h3>
9154391523
9154491524 <nav>
9154591525
91526+ <a href="https://github.com/361930" class="md-author" title="@361930">
91527+
91528+ <img src="https://avatars.githubusercontent.com/u/117172329?v=4&size=72" alt="361930">
91529+ </a>
91530+
9154691531 <a href="https://github.com/yanglbme" class="md-author" title="@yanglbme">
9154791532
9154891533 <img src="https://avatars.githubusercontent.com/u/21008209?v=4&size=72" alt="yanglbme">
0 commit comments