Re: [閒聊] 每日leetcode

作者: leafff (LEAF)   2025-09-01 18:26:57
1792. Maximum Average Pass Ratio
https://leetcode.com/problems/maximum-average-pass-ratio/
給定一個列表classes,
每個元素(班級)都是包含兩個整數的列表,
代表該班級中可以通過期末考的人數與班級總人數
現在你需要安排extraStudents個學生到班級中,
使平均的班級考試通過率最大化
思路:
很顯然,
最優先分配學生的班級是新增後與新增前差距最大的班級,
那可以使用堆來實現
由於排序依據是新增學生後與新增前的差距,
而且Python預設的堆是小頂堆,
因此還需要把該差距算出來放在每個列表前面,
且要加上負號
之後每放入一個學生,
就把該班級拿出來再重新放進去即可
作者: oin1104 (是oin的說)   2025-09-01 18:27:00
大師

Links booklink

Contact Us: admin [ a t ] ucptt.com