You are on page 1of 1

// cơ bản

đệ quy -> dp top-down


dp top-down -> dp bottom up
math -> greedy
greedy -> 2 con trỏ
đệ quy quay lui + greedy -> nhánh cận
dp bottom up + greedy + data structure -> dp nhưng mạnh hơn
binary search mảng ( lowerbound và upperbound )-> binary search answer ( tự code )
kiểm tra số nguyên tố -> sàng nguyên tố
xâu -> big num
math , tư duy -> adhoc
dp -> prefix sum ( 1D , 2D )
std -> data structure ( map , set , multiset, stack , queue, dequeue, priority
queue )
priority queue -> heap sort

// ở mid game
data structure + dp -> bfs (queue) , dfs(stack , hoặc đệ quy )
data structure + sự hiểu biết về binary -> interval tree ( segment , fenwick )
bfs + data structure ( priority_queue) -> dijkstra
math ( lượng giác ) -> hình học - bao lồi
dp + bit wise -> dp bitmask
dp + dfs/bfs -> dp on tree
dp + bao lồi -> dp bao lồi
dfs -> euler
euler -> cầu khớp
dp -> bellman_ford
math -> tổ hợp , chỉnh hợp
math -> modulo nghịch đảo
math + big num -> karatsuba
bfs + vét -> luồng cực đại
bfs + greedy -> cặp ghép cực đại
data structure + math + greedy -> sweep line
string + greedy + data structure -> KMP
string + POINTER -> trie
string + math -> hash

You might also like