thảo luận Leetcode contest, đường tới Guardian

  • Người tạo chủ đề Người tạo chủ đề freedom.9
  • Ngày bắt đầu Ngày bắt đầu
Trạng thái
Không mở để trả lời thêm.
Mà em thấy chính ra ChatGPT detect dạng bài khá là chuẩn nhé, như câu 4 em thử hỏi chatGPT thì cũng định hướng dùng DP, nhưng hàm DP như nào thì nghĩ không ra =)))))
 
Lần này làm được 3 câu. Hai câu đầu dễ, câu 3 t brute force dò hết các substring của từng string, may là qua được :D, còn câu 4 chịu
1710044609387.png


Không rõ mấy ông trong này hay code bằng ngôn ngữ nào vậy, t hay code = Python, mà mấy ông top server đa phần dùng C++
1710044673481.png
 
Lol, câu cuối k subarray phải order. Thế méo nào thằng đề bài chả nói rõ cái mẹ gì cả. theo order thì là câu dp 2 chiều quen thuộc rồi :ah: :ah:
 
Thôi từ bỏ câu cuối, hôm nay code câu 2 câu 3 tốn thời gian quá =((
Câu 2 mất mẹ 20 phút debug vì cứ tưởng đề nó cho 1 index, ai ngờ 0 index
Câu 3 thì tư duy hơi lỗi submit lộn mẹ 2 lần vì ko cover edge cases :ah:
Bài 4 có vẻ ko khó lắm mà ko có thời gian đọc đề rồi =((
 
Thôi từ bỏ câu cuối, hôm nay code câu 2 câu 3 tốn thời gian quá =((
Câu 2 mất mẹ 20 phút debug vì cứ tưởng đề nó cho 1 index, ai ngờ 0 index
Câu 3 thì tư duy hơi lỗi submit lộn mẹ 2 lần vì ko cover edge cases :ah:
Bài 4 có vẻ ko khó lắm mà ko có thời gian đọc đề rồi =((
cho em xin idea c3 với bác ( code luôn cũng dc :beat_brick: )
 
cho em xin idea c3 với bác ( code luôn cũng dc :beat_brick: )
Idea bài 3 thì dùng min heap với 26 phần tử, sắp xếp min heap theo frequency + item. Preprocess các phần tử ko phải là '?' để tính cost trước.
Lúc đầu mình làm sai do ko preprocess trước, thằng pick đằng trước nó ảnh hưởng tới thằng pick đằng sau nên tạch :ah:
Sau đấy là tìm answer, xong rồi sort lại để xử lí string là xong.
Code contest nên mình ko optimize, độ phức tạo 0(26*n*logn). Xài sortedlist để có thể truy cập vô item bằng index. Để tí mình optimize lại về nlogn chứ trong contest rối quá :ah:
 
Sửa lần cuối:
Cái bài 2 mình xây dựng ý tưởng + code chưa tới 5ph. 30ph cuộc đời còn lại là ác mộng vì cứ nghĩ queries là 1 index, đm cay thật cay :ah:
Lấy 30ph đó đập vào bài 4 thì ngon rồi ko =(( làm contest nhiều mà lỗi cũng nhiều quá
Python:
class Solution:
    def unmarkedSumArray(self, nums: List[int], queries: List[List[int]]) -> List[int]:
        marked = set()
        total = sum(nums)
        minHeap = []
        ans = [0]*len(queries)
        for index, value in enumerate(nums):
            heapq.heappush(minHeap, (value, index))
        
        print(minHeap)
        a = 0
        for index, k in queries:
            if not index in marked:
                total -= nums[index]
                marked.add(index)
            
            temp = k
            while minHeap and temp:
                num, j = heapq.heappop(minHeap)
                if j in marked:
                    continue
                
                marked.add(j)
                total -= nums[j]
                temp -= 1
            
            ans[a] = total
            a +=1
        
        return ans
 
Bài 4 em cài DP 2 chiều đếm số subsequences có tổng bằng i và có j phần tử =))) Ý tưởng check thấy top 10 cũng làm thế mà implement mãi không được =((
 
Trạng thái
Không mở để trả lời thêm.

Thống kê chủ đề

Ngày tạo
freedom.9,
Người trả lời cuối
freedom.9,
Trả lời
2.480
Lượt xem
130.647
Quay lại
Lên đầu trang