hieunm3538
Senior Member
Câu cuối khoai quá, đọc giải thì dùng dp để nghiên cứu sau vậy :v Cũng may câu 3 để restrict lỏng nên làm brute force cắn ngay được ạ
em xưa giờ chỉ dùng JSLầ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 , còn câu 4 chịu
View attachment 2375369
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++
View attachment 2375372
Em dùng Python ) Dùng C++ là dân hay thi CP rùiLầ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 , còn câu 4 chịu
View attachment 2375369
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++
View attachment 2375372
Detect dạng bài thì ai cũng làm được thôi fence, chat gpt chuyên gia bịa code, code láo hahaMà 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 )))
cho em xin idea c3 với bác ( code luôn cũng dc )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
Bài 4 có vẻ ko khó lắm mà ko có thời gian đọc đề rồi
MinHeapcho em xin idea c3 với bác ( code luôn cũng dc )
Dùng Set xong brute force thôi bác.câu 2 các bác làm kiểu gì vậy ạ, em mãi không qua được hidden testcase
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.cho em xin idea c3 với bác ( code luôn cũng dc )
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
Knight chưa mai fenceBà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