Re: [闲聊] 每日leetcode

楼主: DJYOMIYAHINA (通通打死)   2025-12-28 11:56:59
今天的
就从最后一个col往下搜,搜到就往左一col,再继续往下
def countNegatives(self, grid: List[List[int]]) -> int:
m, n = len(grid), len(grid[0])
cur_i = 0
rets = 0
for j in range(n-1, -1, -1):
while cur_i<m and grid[cur_i][j] >= 0:
cur_i += 1
rets += (m-cur_i)
return rets
昨天的
看纪录之前写过 但完全忘记了
就照着写吧 我用了两个heap
应该是蛮无脑的做法
def mostBooked(self, n: int, meetings: List[List[int]]) -> int:
free_room = [i for i in range(n)]
ongoing = []
cnt = defaultdict(int)
meetings.sort()
for m in meetings:
while ongoing and ongoing[0][0]<=m[0]:
_, idx = heappop(ongoing)
heappush(free_room, idx)
if free_room:
idx = heappop(free_room)
heappush(ongoing, (m[1], idx))
cnt[idx] += 1
else:
t, idx = heappop(ongoing)
heappush(ongoing, (t+m[1]-m[0], idx))
cnt[idx] += 1
max_cnt, min_idx = 0, 100000
for k, v in cnt.items():
if v>max_cnt:
max_cnt = v
min_idx = k
elif v==max_cnt and k<min_idx:
min_idx = k
return min_idx
作者: JKWP (神楽めあ的烟灰缸)   2025-12-28 11:57:00
大师
楼主: DJYOMIYAHINA (通通打死)   2025-12-28 11:58:00
哀现在都不敢打州赛了

Links booklink

Contact Us: admin [ a t ] ucptt.com