ý tưởng của e là dùng DP tính được số lượng của dạng a,a,b,c,c tức là ở giữa khác 2 bên là S2notmid, rồi Tính tổng của dạng có 2 cặp giống nhau là S2Câu 4 loại bỏ cái dãy trùng như thế nào nhỉ, thua
Lại 3Q Gang rồi đm cay quá![]()

chắc bị mấy bác viết script quét AI rồi, đợt trước nhiều vlCó phải dạo này contest ít người tham gia hơn trước ko các bác? E nhớ trước có khi phải 30k+, giờ còn có 25 trở xuống
tịt Q4
q4 nhìn giống backtrack lắm. có 3-4 case gì thôiCâu 4 loại bỏ cái dãy trùng như thế nào nhỉ, thua
Lại 3Q Gang rồi đm cay quá![]()
Bác này lên Bảo Vệ rồi đúng ko, thấy tham gia chăm chỉ phết
Bác này lên Bảo Vệ rồi đúng ko, thấy tham gia chăm chỉ phết

q3 hôm nay close tách ra khỏi open giữa các interval là nhìn ra à. để open dính vào close nhìn ko ra đâulủng sweep line quá![]()
v để e thử suy nghĩ lại, thanks bácq3 hôm nay close tách ra khỏi open giữa các interval là nhìn ra à. để open dính vào close nhìn ko ra đâu

mod = 10**9+7
class Solution:
def subsequencesWithMiddleMode(self, nums: List[int]) -> int:
total = 0
l,r = Counter(),Counter(nums)
for i,n in enumerate(nums):
j = len(nums)-i-1
r[n] -= 1
n22 = comb(l[n],2)*comb(r[n],2)
n21 = comb(l[n],2)*r[n]*(j-r[n])
n12 = (i-l[n])*l[n]*comb(r[n],2)
n20 = comb(l[n],2)*comb(j-r[n],2)
n02 = comb(i-l[n],2)*comb(r[n],2)
n11 = l[n]*r[n]*(i-l[n])*(j-r[n])
n10 = l[n]*((i-l[n])*comb(j-r[n],2)-sum(l[m]*comb(r[m],2)+l[m]*r[m]*(j-r[m]-r[n]) for m in l if m != n)-sum(comb(r[m],2)*(i-l[m]-l[n]) for m in r if m != n))
n01 = r[n]*((j-r[n])*comb(i-l[n],2)-sum(r[m]*comb(l[m],2)+r[m]*l[m]*(i-l[m]-l[n]) for m in r if m != n)-sum(comb(l[m],2)*(j-r[m]-r[n]) for m in l if m != n))
#print(n22,n21,n12,n20,n02,n11,n10,n01)
total += n22+n21+n12+n20+n02+n11+n10+n01
total %= mod
l[n] +=1
return total
Quote khỏi chạyem bảo vệ em phát card toàn thread![]()
đường tới CM hay IM thế bácNăm mới rồi để lập topic mới cả thi Codeforces luôn nha aenhờ MOD đóng thớt này