Lộ trình học thuật toán từ A đến Z
Bạn mới bắt đầu và không biết nên học gì trước? Lộ trình gồm 5 giai đoạn: học series Nhập môn lập trình (14 bài, kèm 10 chuyên đề bổ sung), series Thuật toán cơ bản (9 bài, kèm 4 chuyên đề), series Thuật toán nâng cao (9 bài, kèm 2 chuyên đề) và series Thuật toán chuyên sâu (15 bài), rồi luyện toàn bộ lời giải trên web theo 9 chặng từ dễ đến khó. Đây đúng là thứ tự mình vẫn dạy học viên ôn thi vào lớp 10 chuyên Tin, thi HSG cấp tỉnh và đội tuyển.
- 1Nhập môn lập trình14 bài + 10 chuyên đề
- 2Thuật toán cơ bản9 bài + 4 chuyên đề
- 3Thuật toán nâng cao9 bài + 2 chuyên đề
- 4Thuật toán chuyên sâu15 bài giảng
- 5Luyện bài tập9 chặng, 300+ bài
Đang ôn thi vào lớp 10 chuyên Tin? Xem thêm lộ trình ôn thi chuyên Tin 12 tháng: chia theo từng tháng, có mốc tự kiểm tra cuối mỗi giai đoạn.
Giai đoạn 1. Series Nhập môn lập trình
Nếu em chưa từng lập trình, hãy bắt đầu từ đây. Học lần lượt từ bài 1 đến bài 14, mỗi bài đều có code C++ kèm Python, khung chạy tay từng bước và 8 bài tập có gợi ý. Làm hết bài tập cuối bài rồi mới sang bài sau, xong thì bấm vào ô tròn để đánh dấu đã học. Bài 14 là đề thi thử để em tự kiểm tra trước khi qua giai đoạn 2.
Chuyên đề bổ sung cho giai đoạn 1
Mười chuyên đề dưới đây gom những dạng bài nhập môn mà đề HSG lớp 9 và đề vào 10 chuyên Tin rất hay ra: xử lý chữ số và hệ cơ số, số thực và làm tròn, số nguyên lớn, mô phỏng trên lưới, xử lý xâu, số học trong đề thi, đọc ghi file và nhập xuất nhanh, dùng Python khi đi thi, mảng cộng dồn 2 chiều, vét cạn thông minh. Em có thể học sau bài 14, hoặc học xen kẽ khi gặp dạng bài tương ứng. Mỗi chuyên đề cũng có khung chạy tay, mô phỏng từng bước và 8 bài tập có gợi ý.
Giai đoạn 2. Series Thuật toán cơ bản
Đã chắc phần nhập môn thì học tiếp các thuật toán nền tảng mà đề thi nào cũng có: đệ quy và quay lui, tìm kiếm nhị phân, hai con trỏ, tham lam, quy hoạch động, thao tác bit, đồ thị BFS/DFS và kỹ năng luyện thi (chấm trâu, sinh test). Bài 23 có đề thi thử 6 câu bấm giờ 180 phút.
Chuyên đề bổ sung cho giai đoạn 2
Bốn chuyên đề cơ bản đi sâu vào những dạng xuất hiện nhiều nhất trong đề HSG cấp tỉnh: cộng dồn kết hợp map để đếm đoạn con, sắp xếp và kỹ thuật sự kiện, nén số, các dạng quy hoạch động kinh điển, đếm và tìm quy luật. Em nên học sau bài 23, trước khi sang series nâng cao.
Giai đoạn 3. Series Thuật toán nâng cao
Dành cho mục tiêu giải cao HSG tỉnh, chuyên Tin và đội tuyển: chia để trị và đếm nghịch thế, ngăn xếp và hàng đợi đơn điệu, modulo và tổ hợp, quy hoạch động nâng cao, hash và KMP, đường đi ngắn nhất, DSU và cây khung, Fenwick và Segment Tree. Bài 32 có đề thi thử 6 câu bấm giờ 180 phút.
Chuyên đề bổ sung cho giai đoạn 3
Hai chuyên đề nâng cao: hình học tính toán (tích có hướng, giao đoạn thẳng, diện tích đa giác, bao lồi) và lũy thừa ma trận (Fibonacci với n tới 1018, truy hồi tuyến tính, đếm đường đi độ dài k).
Giai đoạn 4. Series Thuật toán chuyên sâu
Dành cho HSG tỉnh vòng 2, HSG quốc gia và đội tuyển chuyên Tin: cây và QHĐ trên cây, LCA, sắp xếp topo, thành phần liên thông mạnh, khớp và cầu, Sparse Table và Segment Tree lazy, chia căn và thuật toán Mo, Z-function, Manacher, Trie, số học nâng cao, chặt tam phân, meet in the middle, nhánh cận, lý thuyết trò chơi, ghép cặp và luồng cực đại, gộp tập nhỏ vào lớn, tối ưu quy hoạch động, hash nâng cao, suffix array và Heavy-Light Decomposition (truy vấn trên đường đi của cây).
Góc vui: Thuật toán qua trò chơi
Học mà chơi: Tháp Hà Nội, mê cung, Sudoku, 2048 và cờ caro, mỗi trò là một thuật toán em đã học (đệ quy, BFS, quay lui, mô phỏng mảng 2 chiều, minimax). Mỗi bài có khung chơi thử ngay trên trang và nút để máy giải từng bước. Em học xen kẽ bất cứ lúc nào, rất hợp để rủ bạn bè cùng học.
Giai đoạn 5. Luyện bài tập theo 9 chặng
Học xong các series, em chuyển sang luyện lời giải bài tập trên web. Bài được xếp thành 9 chặng, trong mỗi chặng bài dễ đứng trước. Trước khi vào một chặng, em có thể ôn nhanh bài giảng tương ứng:
- Chặng 1 (nhập môn, kỹ năng cơ bản): Bài 1 đến Bài 11, Bài 22 · nâng cao: Chuyên đề 1, Chuyên đề 2, Chuyên đề 4 · chuyên sâu: Chuyên đề 5, Chuyên đề 7, Chuyên đề 8
- Chặng 2 (toán, số học): Bài 12 · nâng cao: Bài 26, Chuyên đề 3 · chuyên sâu: Bài 40, Chuyên đề 6
- Chặng 3 (xử lý chuỗi): Bài 8 · nâng cao: Bài 28, Chuyên đề 1 · chuyên sâu: Bài 39
- Chặng 4 (sắp xếp, cộng dồn, hai con trỏ): Bài 10, Bài 13, Bài 17 · nâng cao: Bài 24
- Chặng 5 (tham lam, tìm kiếm nhị phân): Bài 16, Bài 18
- Chặng 6 (đệ quy, quay lui, chia để trị): Bài 15, Bài 20 · nâng cao: Bài 24
- Chặng 7 (quy hoạch động): Bài 19 · nâng cao: Bài 27 · chuyên sâu: Bài 33, Bài 42
- Chặng 8 (đồ thị): Bài 21 · nâng cao: Bài 29, Bài 30 · chuyên sâu: Bài 34, Bài 35, Bài 36
- Chặng 9 (cấu trúc dữ liệu): Bài 11 · nâng cao: Bài 25, Bài 31 · chuyên sâu: Bài 37, Bài 38
Cách luyện bài tập theo lộ trình
Đọc đề, tự nghĩ và tự code ít nhất 20–30 phút rồi mới xem lời giải. Bí quá thì chỉ đọc phần ý tưởng thôi.
Dán code vào khung Chấm thử ở cuối mỗi bài để chạy với test ví dụ. Học viên của lớp thì nộp lên CLUE OJ để chấm với bộ test đầy đủ.
Bấm vào ô tròn trước mỗi bài, hoặc nút Đánh dấu đã giải trong bài, để theo dõi tiến độ. Trang chủ cũng hiện tiến độ của bạn.
Chặng 1. Nhập môn & kỹ năng cơ bản
Đây là phần móng. Bạn tập đọc đề cho kỹ, nhập xuất dữ liệu nhanh, duyệt mảng, vét cạn có kiểm soát và luôn tự hỏi: code mình chạy bao nhiêu phép tính? Phần lớn lỗi sai của học sinh mới đến từ tràn số (quên long long) và vòng lặp chạy quá lâu.
- Ước lượng độ phức tạp trước khi code: khoảng 108 phép tính mỗi giây.
- Thấy số lớn hơn 2·109 thì dùng ngay
long long. - Viết vét cạn trước, rồi mới tối ưu.
0/70
- Di chuyển toa tàuDễ
- Bầu cua tôm cáDễ
- Cột bòDễ
- Đồng hồ báo thứcDễ
- Tính giá trịDễ
- Tưới Nước Cho RauDễ
- Đếm số bộ 3Dễ
- Hoán ĐổiDễ
- Đảo NgượcDễ
- Tổng đoạn con lớn nhấtDễ
- Gameshow "Ai là triệu phú"Dễ
- Chia Quà 4Dễ
- Đếm Chữ SốDễ
- Sửa ĐènDễ
- Tính Tổng Các Số Trong XâuDễ
- Ăn Bánh (cookies)Dễ
- Tích Lớn Nhất (TICHMAX)Dễ
- Đong Gạo (DONGGAO)Dễ
- Bánh RánDễ
- Xóa Phần Tử Trong Ma Trận (TABLEDEL)Dễ
- Xóa Số (XOSO – OLPCĐ 2012)Dễ
- Đoạn Con (DPSUBSEG)Dễ
- Hoán Vị Thần Kỳ (MAGPERM)Dễ
- Dãy Số 3 (SEQ3)Dễ
- Dãy Số 1 – Hiệu Số (HISO)Dễ
- Gián ĂnDễ
- Khóa Số (HSG12 Hà Nội 2025 – Bài 1)Dễ
- Mạch DNA (HSG9 Hà Nội 2025 – Bài 2)Dễ
- Bài 7: Mảng 2 chiều (ma trận) trong C++ và Python: duyệt hàng, cột, đường chéo, thao tác cơ bản và mảng độngDễ
- Bài 6: Mảng 1 chiều trong C++ và Python: mảng tĩnh, thêm – xóa – sửa – tìm kiếm – sắp xếp, mảng động và vectorDễ
- Bài 5: Hàm (chương trình con) trong C++ và Python: tham trị, tham chiếu, đệ quyDễ
- Bài 4: Vòng lặp for, while, do – while, break và continue trong C++ và PythonDễ
- Bài 2: Cài đặt Code::Blocks, chương trình C++ đầu tiên, nhập xuất và kiểu dữ liệuDễ
- Xin chào (HELLO)Dễ
- Gấp Giấy (GAGI)Dễ
- Cắt Bìa (HSG9 TP Đà Nẵng 2018-2019 – Bài 2)Dễ
- Collecting Numbers (CSES 2216)Dễ
- Đếm Ký Tự (HSG9 TP Đà Nẵng 2018-2019 – Bài 1)Dễ
- Palindrome Reorder (CSES 1755)Dễ
- Siêu đối xứng (2022TPB02) (Tin học trẻ TP Đà Nẵng 2021-2022 – Bảng B)Dễ
- Minimum Number of Moves to Seat Everyone (LeetCode 2037)Dễ
- Giai Thừa (n < 23)Dễ
- Rotate Numbers (NTHU OJ 12934)Dễ
- Xâu Đối XứngDễ
- ABCDễ
- Đếm Các Số Nguyên Tố Trong DãyDễ
- Số Không GiảmDễ
- Xoay danh sách liên kết K bướcDễ
- Tìm thẻ bị mấtDễ
- Đếm số phần tử cực đại trong ma trậnDễ
- Khôi Phục Mảng A Từ Bảng TổngDễ
- Sắp Xếp Chẵn Trái Lẻ PhảiDễ
- Đổi 1 Chữ Số Để Chia Hết Cho 3Dễ
- Mật Khẩu (PASSWORD) (HSG 12 THPT Lê Quý Đôn Hà Tĩnh 2021-2022)Dễ
- Tổng Các Số Chẵn Liên Tiếp Lớn Nhất (TONGCHAN)Dễ
- Số Đặc BiệtDễ
- Xóa 1 dòng trong mảng 2 chiều cấp phát độngDễ
- Số ngày trong thángDễ
- Max TripleDễ
- Hình Vuông (VUONG) (Tin học trẻ Đà Nẵng 2017-2018, bảng B)Dễ
- Sắp Xếp Lẻ Giảm Bên Trái, Chẵn Tăng Bên PhảiDễ
- Con Ốc Sên (SNAIL)Dễ
- Chuyên đề 1: Xử lý chữ số và đổi hệ cơ số trong C++ và Python: tách chữ số, số đảo ngược, số đối xứng, hệ nhị phân và thập lục phânDễ
- Chuyên đề 2: Số thực, làm tròn và các hàm toán học trong C++ và Python: in số thực, sai số, sqrt, pow, chia lấy trầnDễ
- Chuyên đề 3: Số nguyên lớn (Big Int) trong C++ và Python: cộng, trừ, nhân, chia số lớn bằng xâuDễ
- Chuyên đề 4: Mô phỏng và kỹ thuật trên lưới trong C++ và Python: mảng hướng dx dy, ma trận xoắn ốc, xoay ma trận, ngày thángDễ
- Chuyên đề 7: Đọc ghi file và nhập xuất nhanh trong C++ và Python: freopen, đọc tới hết file, getline, định dạng output và những lỗi làm bài đúng mà 0 điểmDễ
- Chuyên đề 9: Mảng cộng dồn 2 chiều và mảng hiệu 2 chiều trong C++ và Python: tổng hình chữ nhật con O(1), cộng vào cả hình chữ nhật, hình vuông k × k tổng lớn nhấtDễ
- Chuyên đề 10: Vét cạn thông minh và tối ưu vòng lặp trong C++ và Python: đếm số phép tính, thu hẹp vòng lặp, đếm cặp bằng mảng đếm, ăn điểm subtaskDễ
- Cách hạn chế lỗi Wrong Answer khi nộp bài trên các web chấm code
Chặng 2. Toán & số học
Đề thi HSG rất hay có bài toán học: chia hết, ước, số nguyên tố, đồng dư, tìm quy luật. Chỉ cần nhận xét đúng là code rất ngắn, nhưng nếu không nhìn ra thì có code dài cũng không qua được.
- Thuộc lòng sàng Eratosthenes và cách đếm ước.
- Kết quả lớn thì lấy modulo ở mọi bước cộng và nhân.
- Thử tay với N nhỏ để tìm quy luật, sau đó mới chứng minh.
0/30
- Tìm 2 sốDễ
- Khuyến Mãi (mua bút)Dễ
- Kiểm Tra Nguyên TốDễ
- Cắt Hình (HSG9 Hà Nội 2025 – Bài 1)Dễ
- Bài 12: Số học cơ bản trong C++ và Python: chia lấy dư, ước số, UCLN – BCNN, số nguyên tố, sàng EratosthenesDễ
- Trồng cây (Đề tự luyện HSG Tin 9 – Bài 1) – Từ vét cạn O(S) đến duyệt ước tới căn bậc haiDễ
- Số Lặp Lại (CPP0181)Dễ
- Chia Quà (CHIAQUA)Dễ
- Chuyên đề 6: Số học trong đề thi với C++ và Python: đếm bội trong đoạn, bao hàmDễ
- LoopTrung bình
- Trám ĐenTrung bình
- Đếm Cặp Version 2Trung bình
- Phân SốTrung bình
- Tìm Chữ Số (CHUSO2)Trung bình
- Tổng (THPT16 – Bài 4)Trung bình
- Tìm Phần Thưởng (THUONG) (HSG9 TP Đà Nẵng 2018-2019 – Bài 3)Trung bình
- Future Number 1 (FUTURENUM)Trung bình
- Tìm số d lớn nhất để a % d = b % d = c % dTrung bình
- Hình Vuông (tht21_tphcm_slc_square) (Tin học trẻ TPHCM 2021, vòng sơ loại, bảng C)Trung bình
- Cặp Số Kì Diệu (PAIRS (Chọn đội tuyển HSG QG Tiền Giang 2022-2023)Trung bình
- Cyclically Rotating a Grid (LeetCode 1914)Trung bình
- Bài 26: Toán modulo và tổ hợp trong C++ và Python: lũy thừa nhanh, nghịch đảo modulo, tính tổ hợp C(n, k) mod pTrung bình
- Chuyên đề cơ bản 4: Đếm và tìm quy luật trong C++ và Python: quy tắc cộng, quy tắc nhân, đếm bằng đóng góp, lập bảng đoán công thức, chu kỳTrung bình
- Chèn Phép ToánKhá
- Tích Các Ước (MULDIV)Khá
- Trò Chơi (HSG9 Hà Nội 2025 – Bài 4)Khá
- Tính tổng (OLP2B)Khá
- Mai (2023HITOPENDAY_4)Khá
- Chia kẹo (Đề tự luyện HSG Tin 12 – Bài 1) – Chia khối theo N/k và số học moduloKhá
- Bài 40: Số học nâng cao trong C++ và Python: sàng ước nguyên tố nhỏ nhất, sàng trên đoạn, hàm phi Euler, Euclid mở rộng, định lý thặng dư Trung HoaKhá
Chặng 3. Xử lý chuỗi
Xâu ký tự xuất hiện trong gần như mọi đề thi: đếm ký tự, xâu con, đối xứng, so khớp. Bạn nắm chắc thao tác cơ bản trước rồi mới học KMP và Hash.
- Dùng mảng đếm 26 chữ cái thay cho map khi có thể.
- Để ý chỉ số bắt đầu từ 0 hay 1, sai một vị trí là WA.
- Đọc cả dòng có dấu cách thì dùng
getline.
0/10
- Mã hóa CeasarDễ
- Bài 8: Xâu ký tự (chuỗi) trong C++ và Python: char, mã ASCII, string và các bài toán xử lý xâuDễ
- Xuất các từ trong chuỗi, mỗi từ một dòngDễ
- Tìm Số Đảo Ngược (VL18)Dễ
- Biến đổi xâu đối xứngTrung bình
- Xâu Con (HSG12'18-19)Trung bình
- Xâu Đối Xứng (XDXUNG) (HSG12 Lâm Đồng 2025 – Bài 3)Khá
- Bài 28: Xử lý xâu nâng cao trong C++ và Python: Hash xâu và thuật toán KMPKhá
- Bài 39: Xâu chuyên sâu trong C++ và Python: Z-function, thuật toán Manacher, cây tiền tố Trie và Trie nhị phânKhá
- Bài 46: Hash nâng cao và mảng hậu tố (Suffix Array) trong C++ và Python: chống anti-hash, hash tập hợp, hash cây, thuật toán KasaiKhá
Chặng 4. Sắp xếp, mảng cộng dồn, hai con trỏ
Đây là nhóm kỹ thuật "rẻ mà mạnh": sắp xếp, mảng cộng dồn (prefix sum), mảng hiệu, hai con trỏ, rời rạc hoá. Nhiều bài O(N²) xuống được O(N) hoặc O(N log N) chỉ nhờ một mảng cộng dồn.
- Gặp câu hỏi tổng đoạn [l, r] thì nghĩ ngay tới prefix sum.
- Có nhiều lần cộng vào một đoạn thì dùng mảng hiệu.
- Mảng đã sắp xếp mà cần tìm cặp thì thử hai con trỏ.
0/40
- Đếm Số Nguyên Tố (MK119SNT)Dễ
- Bài 13: Mảng đánh dấu, đếm phân phối và mảng cộng dồn (prefix sum), mảng hiệu trong C++ và PythonDễ
- Bài 10: Struct, pair và sắp xếp theo nhiều tiêu chí trong C++ và Python (hàm so sánh cmp, xếp hạng)Dễ
- Họ Hàng (HOHANG) (HSG 19.20)Dễ
- Chuỗi Nguyên TốDễ
- Tặng Quà (QUA) (HSG 12 Nam Định 2021 – 2022)Dễ
- Chuyên đề 5: Xử lý xâu trong đề thi bằng C++ và Python: getline, chuẩn hoá họ tên, tách số, đếm tần suất, nén xâu RLEDễ
- Trồng câyTrung bình
- Chọn từTrung bình
- Ma trận xoắn ốc 2Trung bình
- Số Lượng Cách XóaTrung bình
- Trung Bình CộngTrung bình
- Ước Lớn Nhất (BESTUOC)Trung bình
- Dấu trong đoạn (MULTI)Trung bình
- Đoạn Đẹp (Duyên Hải 2021)Trung bình
- Đặt Trạm Phủ Sóng (MOBI – OLP 30/4 Khối 10)Trung bình
- Tạo Mảng B (TAOMANGB)Trung bình
- Mua Sắm (HSG12 Hà Nội 2025 – Bài 2)Trung bình
- Bài 17: Kỹ thuật hai con trỏ và cửa sổ trượt trong C++ và Python: tìm cặp, đoạn con dài nhất, ngắn nhất trong O(n)Trung bình
- Tăng Đầu Giảm Cuối (ARRAYM)Trung bình
- Restaurant Customers (CSES 1619)Trung bình
- Chuỗi hạt bồ đề (PTIT009)Trung bình
- Flowers (ICTU 56)Trung bình
- Maximize the Confusion of an Exam (LeetCode 2024)Trung bình
- Longest Subarray of 1's After Deleting One Element (LeetCode 1493)Trung bình
- Đếm đoạn (HNOI19_R1_DEMDOAN) (HSG Hà Nội 2019 vòng 1)Trung bình
- Tìm 3 Phần Tử Có Tổng Bằng KeyTrung bình
- Cặp Số Chia Hết Cho 3 (BAI3)Trung bình
- Khoảng Cách Bằng XTrung bình
- Dương Âm Xen KẽTrung bình
- Chuyên đề cơ bản 2: Sắp xếp, kỹ thuật sự kiện (sweep line) và nén số (rời rạc hoá) trong C++ và Python: gộp đoạn, khách nhà hàng, xếp phòngTrung bình
- Điểm chungKhá
- Hộp màu (COLORBOXKhá
- Ước Chung Lớn Nhất (GCD – Bài 4, đề HSG)Khá
- Vận Chuyển Gỗ (Thi thử HSG9 SQRTOJ 2025 – Ngày 1 Bài 2)Khá
- Mái Che (COVER)Khá
- Số nguyên tố (PRIME)Khá
- Chia phần (CHIAPHAN)Khá
- Ma Trận May Mắn (LUCKYSQ) (Beginner Free Contest 23)Khá
- Hình Chữ Nhật 2Khó
Chặng 5. Tham lam & tìm kiếm nhị phân
Tham lam là chọn cái tốt nhất ở mỗi bước. Khó nhất là chứng minh cách chọn đó đúng. Tìm kiếm nhị phân không chỉ để tìm phần tử trong mảng, mà còn để chặt nhị phân đáp án, một kỹ thuật cực kỳ hay gặp.
- Nghĩ ra cách tham lam thì thử tìm phản ví dụ trước khi code.
- Đề hỏi "nhỏ nhất sao cho…" hay "lớn nhất sao cho…" thì nghĩ tới chặt nhị phân đáp án.
- Viết hàm
check(x)riêng cho gọn và dễ sửa.
0/51
- Thang máyDễ
- Đồng hồ sốDễ
- Cửa Hàng Số HọcDễ
- Sách CũDễ
- Dự Trữ NướcDễ
- Tiệm SáchDễ
- TaxiDễ
- Two Sets (CSES 1092)Dễ
- Speed Typing (Kick Start 2022 A1)Dễ
- Chênh lệchTrung bình
- Bán BitcoinTrung bình
- Ghép SốTrung bình
- Tổng Lớn Nhất Đạt Được Từ Một Hoán Vị Bất KỳTrung bình
- Thêm Dãy ConTrung bình
- Chặt Cây Xây NhàTrung bình
- Đoạn Phủ (DOANP)Trung bình
- Nối Điểm Đen Trắng (VOI 2011)Trung bình
- Bảng NhânTrung bình
- Khuyến mãi trà sữaTrung bình
- Chiều dài phủ (DOANP2)Trung bình
- Khoảng cách nhỏ nhất (RBPOINT2)Trung bình
- Tham Dự Đại Hội Thể Thao (BAI2 – HSG)Trung bình
- Quà Trung Thu (QUATANG – HSG 18.19)Trung bình
- Trò Chơi Ghép Số (NUMTRANS)Trung bình
- Bộ Số Tam Giác (BOSOTG) (HSG12 Đà Nẵng 2018-2019 – Bài 1)Trung bình
- Bài 18: Thuật toán tham lam trong C++ và Python: đổi tiền, chọn hoạt động, xếp lịch và khi nào tham lam saiTrung bình
- Bài 16: Tìm kiếm nhị phân trong C++ và Python: lower_bound, upper_bound và kỹ thuật chặt nhị phân đáp ánTrung bình
- Các Hiệp Sĩ (GREKNIGHT)Trung bình
- Ferris Wheel (CSES 1090)Trung bình
- NUM5 (final2_2122_num5)Trung bình
- Find Original Array From Doubled Array (LeetCode 2007)Trung bình
- Remove Colored Pieces if Both Neighbors are the Same Color (LeetCode 2038)Trung bình
- Mã Hóa Đại Hiệp (MAHOATrung bình
- Biến Đổi SốTrung bình
- Cắt Dây (CATDAY)Trung bình
- Sửa đồng hồ (Đề tự luyện HSG Tin 9 – Bài 2) – Tham lam bằng kĩ thuật đổi chỗ hai việc kề nhauTrung bình
- Chia Đoạn (SEG)Trung bình
- Hộp Quà (HOPQUA)Trung bình
- Factory Machines (CSES 1620)Trung bình
- Trò chơi 4: Game 2048 trong C++ và Python: mảng 2 chiều, trượt và gộp một hàng, xoay ma trận cho 4 hướng, máy tự chơi bằng tham lamTrung bình
- Cặp Ước ĐẹpKhá
- Chia Mảng (CSES Array Division)Khá
- Xây Hàng Rào (HNOJ)Khá
- Số Đặc Biệt (SDB)Khá
- Số Có 9 Ước Số (Bản Khó)Khá
- Đèn Lồng (HSG12 Hà Nội 2025 – Bài 3)Khá
- Trung Bình Cộng Lớn Nhất (CSLOJ 1404) (Bồi dưỡng HSGQG Hải Phòng 2020)Khá
- Trạm phát sóng (Đề tự luyện HSG Tin 12 – Bài 2) – Chặt nhị phân đáp án và tham lam "cột xa nhất"Khá
- Khóa Số 3Khó
- Trang Trí Tết (Thi thử HSG9 SQRTOJ 2025 – Bài 4)Khó
- Kth Smallest Product of Two Sorted Arrays (LeetCode 2040)Khó
Chặng 6. Đệ quy, quay lui, chia để trị
Đệ quy là nền tảng cho quay lui, chia để trị, duyệt bitmask và meet in the middle. Đây cũng là cầu nối để bước sang quy hoạch động.
- Luôn viết điều kiện dừng trước.
- Quay lui thì nhớ cắt nhánh sớm để chạy kịp thời gian.
- N ≤ 20 thì nghĩ tới bitmask, N ≤ 40 thì nghĩ tới meet in the middle.
0/16
- Nuôi bò 1Dễ
- Chia Xâu Thành Số Lượng Lớn Nhất Các Xâu Con Duy NhấtDễ
- Số Tình NghĩaDễ
- Chuyên đề 8: Python khi đi thi: viết sao cho đủ nhanh, đọc ghi nhanh, hàm có sẵn, đệ quy sâu và khi nào nên chuyển sang C++Dễ
- Tìm Ký Tự Thứ KTrung bình
- Bài 20: Thao tác bit và bitmask trong C++ và Python: AND, OR, XOR, dịch bit, mẹo xử lý bit, duyệt mọi tập conTrung bình
- Bài 15: Đệ quy và thuật toán quay lui trong C++ và Python: sinh nhị phân, hoán vị, tổ hợp, bài toán N quân hậuTrung bình
- Tiền Tệ (TIENTE)Trung bình
- Số Siêu May MắnTrung bình
- Concatenation of Consecutive Binary Numbers (LeetCode 1680)Trung bình
- Bài 24: Chia để trị trong C++ và Python: sắp xếp trộn (merge sort), sắp xếp nhanh (quick sort), đếm cặp nghịch thếTrung bình
- Trò chơi 1: Tháp Hà Nội trong C++ và Python: tư duy đệ quy, vì sao cần 2^n − 1 nước, tìm nước đi thứ k bằng bitTrung bình
- Trò chơi 3: Giải Sudoku bằng quay lui trong C++ và Python: kiểm tra ô hợp lệ, cắt nhánh MRV và bitmaskTrung bình
- Xâu Fibonacci (FIB2)Khá
- Chia Hết (CHIAHET)Khá
- Bài 41: Kỹ thuật tìm kiếm nâng cao trong C++ và Python: chặt nhị phân đáp án, chặt tam phân, meet in the middle, nhánh cậnKhá
Chặng 7. Quy hoạch động
Quy hoạch động là "trùm cuối" của các kỳ thi HSG và chuyên Tin. Bạn cần trả lời được 3 câu: trạng thái là gì, chuyển trạng thái thế nào, và cơ sở (trường hợp nhỏ nhất) là gì.
- Bắt đầu từ các bài kinh điển: cái túi, dãy con tăng, đếm cách.
- Viết công thức truy hồi ra giấy trước khi code.
- Gặp đếm số trong đoạn [A, B] theo chữ số thì dùng Digit DP.
0/65
- Dãy Con Tăng Dài Nhất – Bản Dễ (DCTDN1)Dễ
- Cầu Thang Nhà A Phủ (DPSTEPS)Dễ
- Công Chúa (DPPRINCESS)Dễ
- Frog 2 (AtCoder Educational DP Contest B)Dễ
- Đường đi của RobotTrung bình
- Tìm xnTrung bình
- Tổng Bình Phương Các Số ConTrung bình
- Chia TrangTrung bình
- Cộng một kiểu ĐứcTrung bình
- Dãy Số 8Trung bình
- Giảm Thiểu Đồng Xu (CSES 1634)Trung bình
- Lát GạchTrung bình
- Mario Nhảy CộtTrung bình
- Mô Tả Mảng (CSES 1746 Array Description)Trung bình
- Xếp Hàng Mua Vé (NKTICK)Trung bình
- Xếp Lịch (XEPLICH)Trung bình
- Đường Đi Của Robot (ROBOT)Trung bình
- Chia Đồ Chơi (DPTOYS)Trung bình
- Phi Tiêu (PHITIEU)Trung bình
- Nhàm Chán (DPBORE)Trung bình
- Two Sets IITrung bình
- Asen Và BoyanTrung bình
- Món Ăn (DPRCMA)Trung bình
- Money SumTrung bình
- Stones (AtCoder Educational DP Contest K)Trung bình
- Cặp XáchTrung bình
- Bài 19: Quy hoạch động nhập môn trong C++ và Python: Fibonacci, đếm đường đi, cái túi 0/1, dãy con tăng dài nhấtTrung bình
- Dãy số 2 (SEQ2)Trung bình
- Kinh nghiệm (BROTHERS (Olympic 30/4 2019 Khối 11)Trung bình
- Perfect Sum Problem (GFG perfect-sum)Trung bình
- Count Number of Teams (LeetCode 1395)Trung bình
- Maximum Earnings From Taxi (LeetCode 2008)Trung bình
- Maximum Non Negative Product in a Matrix (LeetCode 1594)Trung bình
- Bài toán chiếc balo 2 (BALO2)Trung bình
- Cái Túi 2 (BTKCATU2)Trung bình
- Chuyên đề cơ bản 3: Quy hoạch động kinh điển trong C++ và Python: dãy con chung dài nhất, sửa xâu, QHĐ trên lưới, đếm cách đổi tiền, chia đoạnTrung bình
- Trò chơi 5: Cờ caro trong C++ và Python: kiểm tra thắng bằng mảng hướng, minimax bất bại cho tic-tac-toe, cắt tỉa alpha–beta và hàm đánh giáTrung bình
- Dự ánKhá
- Qua cầuKhá
- Chú Tiểu Chùa HươngKhá
- Số Zero Tận CùngKhá
- Trọng Số Của XâuKhá
- Chia Hết (DPRCDIV)Khá
- Du Hành (ACM Việt Nam 10-2014)Khá
- Điệu Nhảy Mùa Xuân (DPRCCOW)Khá
- Tìm Số Có N Ước (NDIVISORS)Khá
- Mua Hàng (HSG9 Hà Nội 2025 – Bài 5)Khá
- Trò Chơi (DPRCDIE)Khá
- First Day Where You Have Been in All the Rooms (LeetCode 1997)Khá
- Số May MắnKhá
- Bài 27: Quy hoạch động nâng cao trong C++ và Python: truy vết, QHĐ trên đoạn, QHĐ bitmask và QHĐ chữ sốKhá
- Bài 42: Lý thuyết trò chơi trong C++ và Python: trạng thái thắng thua, Nim, hàm Grundy, minimax và tổng ôn series Thuật toán chuyên sâuKhá
- Chuyên đề nâng cao 2: Lũy thừa ma trận trong C++ và Python: nhân ma trận, Fibonacci thứ n với n tới 10^18, truy hồi tuyến tính, đếm đường đi độ dài kKhá
- Tổng Các Chữ SốKhó
- Chi Phí Ít Nhất Để Kết Nối Hai Nhóm ĐiểmKhó
- Đếm Xâu TốtKhó
- Số Cách Điền LướiKhó
- Trò Chơi Nhặt TiềnKhó
- Trò Chơi (HSG12 Hà Nội 2025 – Bài 4)Khó
- Kẻ Về Nhì (SECOND) (Thi thử HSG9 SQRTOJ 2025 – Ngày 2 Bài 5)Khó
- Count Number of Special Subsequences (LeetCode 1955)Khó
- The Number of Good Subsets (LeetCode 1994)Khó
- Trò Chơi Xếp Số (GAME11)Khó
- Minimum Incompatibility (LeetCode 1681)Khó
- HỎI ĐÁP LẬP TRÌNH THI HỌC SINH GIỎI
Chặng 8. Đồ thị
Phần dành cho mục tiêu đội tuyển và chuyên Tin cấp cao: duyệt đồ thị BFS/DFS, đường đi ngắn nhất, cây khung, DSU, cây và LCA. Rất nhiều bài nhìn qua tưởng không liên quan, nhưng khi mô hình hoá thành đồ thị là ra ngay.
- Lưu đồ thị bằng danh sách kề (
vector<int> adj[N]). - Đồ thị không trọng số thì BFS, có trọng số không âm thì Dijkstra.
- Cần gộp nhóm hoặc kiểm tra liên thông nhanh thì dùng DSU.
0/23
- Nhà Từ Thiện SwyrinTrung bình
- Covid (ICTU P58)Trung bình
- Bài 23: Tổng ôn Thuật toán cơ bản: nhận dạng bài và đề thi thử 6 câu có lời giải C++ và PythonTrung bình
- Bài 21: Đồ thị nhập môn trong C++ và Python: danh sách kề, BFS, DFS, thành phần liên thông và loang trên lướiTrung bình
- The Time When the Network Becomes Idle (LeetCode 2039)Trung bình
- Software (SOFTWARE) (Olympic 30/4 2023 – Tin học khối 10)Trung bình
- Bữa Tiệc (BUATIEC) (HSG12 Lâm Đồng 2025 – Bài 4)Trung bình
- Trò chơi 2: Mê cung trong C++ và Python: sinh mê cung bằng DFS ngẫu nhiên, tìm đường ngắn nhất bằng BFS và truy vết đường điTrung bình
- Bin LadenKhá
- Thoát lũ (Đề tự luyện HSG Tin 9 – Bài 4) – BFS nhiều nguồn và cuộc đua giữa người và nướcKhá
- Số Cách Đi Quân Mã (SOCACH) (Olympic 30/4 2023 – Tin học khối 10)Khá
- Bài 30: Disjoint Set Union (DSU) và cây khung nhỏ nhất trong C++ và Python: Kruskal và PrimKhá
- Bài 33: Cây và quy hoạch động trên cây trong C++ và Python: DFS trên cây, kích thước cây con, đường kính, tập độc lập lớn nhất, kỹ thuật đổi gốcKhá
- Bài 34: LCA và nhảy nhị phân trong C++ và Python: tổ tiên chung gần nhất, tổ tiên thứ k, khoảng cách trên câyKhá
- Bài 35: Sắp xếp topo trong C++ và Python: đồ thị có hướng không chu trình (DAG), thuật toán Kahn, DFS ba màu và quy hoạch động trên DAGKhá
- Bài 36: Thành phần liên thông mạnh, đỉnh khớp và cầu trong C++ và Python: num/low, Tarjan, KosarajuKhá
- Bài 43: Ghép cặp trên đồ thị hai phía và luồng cực đại trong C++ và Python: thuật toán Kuhn, Edmonds–Karp, lát cắt nhỏ nhất, định lý KönigKhá
- Dịch chuyển tức thờiKhó
- Strange Printer II (LeetCode 1591)Khó
- Parallel Courses II (LeetCode 1494)Khó
- Phà đêm (Đề tự luyện HSG Tin 12 – Bài 4) – Dijkstra với cạnh phụ thuộc thời gian và đồ thị nhiều tầngKhó
- Count Ways to Build Rooms in an Ant Colony (LeetCode 1916)Khó
- Mùa nước nổi (Đề tự luyện HSG Tin quốc gia – Bài 4) – Cây Kruskal, DSU gộp tập nhỏ vào lớn và nhảy nhị phânKhó
Chặng 9. Cấu trúc dữ liệu & kỹ thuật nâng cao
Các cấu trúc dữ liệu giúp code nhanh hơn hẳn: ngăn xếp, hàng đợi, hàng đợi ưu tiên, set/map, ngăn xếp đơn điệu, rồi tới Segment Tree, Fenwick Tree, Sparse Table. Đây là những "vũ khí" để lấy trọn điểm các bài khó nhất.
- Tìm phần tử gần nhất lớn hơn hoặc nhỏ hơn thì dùng ngăn xếp đơn điệu.
- Truy vấn đoạn có cập nhật thì dùng Segment Tree hoặc Fenwick.
- Luôn ghi nhớ độ phức tạp của từng thao tác trên set/map/priority_queue.
0/62
- Dãy ngoặc đúngDễ
- Mật Khẩu (PASSWDễ
- Bài 11: STL cơ bản trong C++ và Python: vector, stack, queue, set, map (kèm bài kiểm tra dấu ngoặc, Josephus)Dễ
- So sánh 2 danh sách liên kết (isEqual)Dễ
- Nhảy Lò CòTrung bình
- Số Nguyên Tố Hoàn HảoTrung bình
- Đồng Tiền Xu Giả (FCOIN)Trung bình
- Số siêu nguyên tố (SPRIME)Trung bình
- Xóa Chữ Số (DELNUM)Trung bình
- Dãy Số 4 (SEQ4)Trung bình
- Trò Chơi 2 (DPGAME2)Trung bình
- Đổi Tiền (DPRCCOI)Trung bình
- Dây Đèn (HSG9 Hà Nội 2025 – Bài 3)Trung bình
- Xếp Khối Gỗ (Thi thử HSG9 SQRTOJ 2025 – Ngày 1 Bài 1)Trung bình
- Tìm kiếm nhị phân 3 (SEARCH3)Trung bình
- Xâu Duy Nhất (Xauduynhat)Trung bình
- Apple Division (CSES 1623)Trung bình
- Trúc (2023HITOPENDAY_3)Trung bình
- Design Underground System (LeetCode 1396)Trung bình
- Lá Bài (LABAI)Trung bình
- Rút Tiền ATMTrung bình
- Dãy Chẵn Lẻ (DAYSO)Trung bình
- Nói Chuyện Riêng (ARGUMENT)Trung bình
- Giải Cứu Đàn Gà (Codeforces 650A Watchmen)Trung bình
- Make Sum Divisible by P (LeetCode 1590)Trung bình
- Bài 25: Ngăn xếp đơn điệu và hàng đợi đơn điệu trong C++ và Python: phần tử lớn hơn gần nhất, min/max trên cửa sổ trượt, hình chữ nhật lớn nhấtTrung bình
- Chuyên đề cơ bản 1: Kỹ thuật cộng dồn kết hợp map trong C++ và Python: đếm đoạn con có tổng bằng k, chia hết cho k, XOR tiền tố, đoạn cân bằngTrung bình
- CameraKhá
- Chia RuộngKhá
- Đếm Đoạn Bao ChứaKhá
- SEQKhá
- Pilots (MPILOT)Khá
- Chuỗi Con Xuất Hiện K Lần (DTKSUB)Khá
- Collecting Numbers II (CSES 2217)Khá
- Room Allocation (CSES 1164)Khá
- Dãy nghịch thế (NKINV)Khá
- Bộ Vũ Khí Tốt (Codeforces 145CKhá
- Dãy đèn lồng (Đề tự luyện HSG Tin 9 – Bài 3) – Ngăn xếp đơn điệu và bẫy các giá trị bằng nhauKhá
- Bảng thi đua (Đề tự luyện HSG Tin 12 – Bài 3) – Nén giá trị offline, Fenwick tree và tìm phần tử thứ kKhá
- Dãy Số (CAU3)Khá
- Biểu Thức Bằng K (EXPR)Khá
- Bài 29: Đường đi ngắn nhất trong C++ và Python: Dijkstra, BFS 0-1, Floyd-Warshall và Bellman-FordKhá
- Bài 31: Cây Fenwick (BIT) và cây phân đoạn (Segment Tree) trong C++ và Python: truy vấn đoạn có cập nhậtKhá
- Bài 37: Sparse Table và Segment Tree lan truyền lười (lazy propagation) trong C++ và Python: RMQ O(1), cộng đoạn, gán đoạnKhá
- Bài 38: Chia căn (sqrt decomposition) và thuật toán Mo trong C++ và Python: truy vấn đoạn, đếm số giá trị phân biệtKhá
- Bài 44: Kỹ thuật trên cây trong C++ và Python: Euler tour kết hợp Fenwick, gộp tập nhỏ vào lớn (small-to-large) và DSU on treeKhá
- Bài 45: Tối ưu quy hoạch động trong C++ và Python: min tiền tố, hàng đợi đơn điệu, Convex Hull Trick, Li Chao tree, chia để trị tối ưuKhá
- Chuyên đề nâng cao 1: Hình học tính toán cơ bản trong C++ và Python: tích có hướng, giao hai đoạn thẳng, diện tích đa giác, bao lồiKhá
- Bài 47: Heavy-Light Decomposition (HLD) trong C++ và Python: truy vấn và cập nhật trên đường đi của cây, chuỗi nặng, LCA bằng HLDKhá
- Palindrome KépKhó
- Ăn BuffetKhó
- Chênh Lệch Lớn NhấtKhó
- Hội ChợKhó
- Đếm Phép Nhân (Thi thử HSG9 SQRTOJ 2025 – Ngày 1 Bài 3)Khó
- Công Ty (HSG12 Hà Nội 2023 Vòng 1 – Bài 4)Khó
- Smallest Missing Genetic Value in Each Subtree (LeetCode 2003)Khó
- Minimum Number of Operations to Make Array Continuous (LeetCode 2009)Khó
- Maximum Number of Ways to Partition an Array (LeetCode 2025)Khó
- Chia nhóm (Đề tự luyện HSG Tin quốc gia – Bài 1) – QHĐ kết hợp cây phân đoạn và hai ngăn xếp đơn điệuKhó
- Cáp quang (Đề tự luyện HSG Tin quốc gia – Bài 2) – Cây Steiner động: thứ tự DFS, set và LCAKhó
- Kho lúa (Đề tự luyện HSG Tin quốc gia – Bài 3) – QHĐ chia đoạn, Convex Hull Trick và Aliens trickKhó
- Lập đội (Đề tự luyện HSG Tin 12 – Bài 5) – QHĐ chia đoạn với Segment Tree lazy và hai ngăn xếp đơn điệuKhó
Bài tổng hợp và luyện thêm
Những bài kết hợp nhiều kỹ thuật, hoặc chưa xếp vào chặng nào ở trên. Bạn dùng phần này để luyện phản xạ như khi đi thi thật.
0/111
- Bài 14: Tổng ôn series Nhập môn lập trình và đề thi thử 6 câu có lời giải chi tiết (C++ và Python)Dễ
- Bài 9: Độ phức tạp thuật toán, đọc ghi file và cách bài được chấm trên Online Judge (AC, WA, TLE)Dễ
- Bài 3: Câu lệnh điều kiện rẽ nhánh if, else, else if, switch trong C++ và PythonDễ
- Bài 1: Lập trình là gì? Lập trình thuật toán để làm gì? Nên học C++ hay Python?Dễ
- Bài 22: Kỹ năng luyện thi lập trình: đọc giới hạn, tránh tràn số, debug, sinh test và chấm trâu (stress test)Trung bình
- Bài 32: Tổng ôn Thuật toán nâng cao: nhận dạng bài và đề thi thử 6 câu có lời giải C++ và PythonKhá
- Hướng dẫn tham gia Thi thử HSG Tin học hàng tuần trên ClueOJ (từ đăng ký tài khoản đến lúc vào phòng thi)
- Seri chia sẻ về ngành CNTT – Phần 1: Người chọn nghề hay Nghề chọn người?
- Bài 27: Vì sao Trung Quốc thống trị IOI? Hệ thống NOI và bài học cho Việt Nam
- Bài 26: Google Code Jam và Hash Code – Những kỳ thi huyền thoại đã khép lại
- Bài 25: Codeforces ra đời như thế nào? Mike Mirzayanov và sân chơi của hàng triệu lập trình viên
- Bài 24: Khi AI đi thi lập trình – Từ AlphaCode đến 12/12 bài tại ICPC World Finals
- Bài 23: Việt Nam ở ICPC World Finals qua các năm – Từ lần đầu dự thi đến tấm huy chương đầu tiên
- Bài 22: Phụ nữ trong lập trình thi đấu và Olympic Tin học Nữ sinh châu Âu (EGOI)
- Bài 21: Lịch sử ICPC World Finals – Những đội vô địch nhiều lần nhất
- Bài 20: Thần đồng thế hệ mới – Kevin Sun (ksun48), ainta và Benq
- Bài 19: Việt Nam ở IOI qua các năm – 23 HCV và hành trình hơn ba thập kỷ
- Bài 18: maroonrk (Riku Kawasaki) – HCV IOI hạng 4 và người ra đề AtCoder World Tour Finals
- Bài 17: Errichto (Kamil Dębowski) – Á quân Code Jam và "thầy giáo" YouTube của lập trình thi đấu
- Bài 16: Endagorion (Mikhail Tikhomirov) – Tuyển thủ, tác giả đề và huấn luyện viên ICPC
- Bài 15: Radewoosh (Mateusz Radecki) – 29 lần nhất vòng Codeforces, HCV IOI và ICPC
- Bài 14: Thế hệ vàng tin học Việt Nam – Những gương mặt HCV IOI và ICPC qua các thời kỳ
- Bài 13: Trần Xuân Bách (fextivity) – HCV IOI 2022 và nhà vô địch VNOI CUP 2024
- Bài 12: Bùi Hồng Đức – 2 HCV IOI và tấm huy chương ICPC World Finals đầu tiên của Việt Nam
- Bài 11: ecnerwala (Andrew He) – Nhà vô địch Hacker Cup 2021, á quân ICPC và "streamer" của lập trình thi đấu
- Bài 10: Um_nik (Alexey Danilyuk) – Nhà vô địch ICPC và câu nói "Hãy ngừng học thuật toán vô dụng"
- Bài 9: tomek (Tomasz Czajka) – Ông vua đầu tiên của TopCoder và kỹ sư phần mềm tàu Crew Dragon
- Bài 8: ACRush (Lâu Thiên Thành) – "Lâu giáo chủ" 2 lần vô địch Code Jam, CTO Pony.ai
- Bài 7: Petr Mitrichev (Petr) – Ông vua thời TopCoder, 4 lần vô địch TCO, 3 lần Hacker Cup
- Bài 6: rng_58 (Makoto Soejima) – Thiên tài IMO 42/42 và kiến trúc sư của AtCoder
- Bài 5: Benq (Benjamin Qi) – Hai lần vô địch IOI và người sáng lập USACO Guide
- Bài 4: jiangly (Jiang Lingyu) – Người thứ hai vượt 4000 rating Codeforces và "trường phái" code sạch
- Bài 3: William Lin (tmwilliamlin168) – Nhà vô địch IOI 600/600 và hiện tượng YouTube của lập trình thi đấu
- Bài 2: Khúc Anh Tuấn (ktuan) – Huyền thoại mở đường của lập trình thi đấu Việt Nam
- Bài 1: Gennady Korotkevich (tourist) – Huyền thoại sống của lập trình thi đấu
- Bài 27: Thu nhỏ ảnh mà không làm méo người – Thuật toán seam carving và quy hoạch động
- Bài 26: Xếp hàng vào thùng và chọn đơn cho xe giao hàng – Bài toán cái túi và bài toán xếp thùng
- Bài 25: Robot hút bụi đi khắp nhà như thế nào? BFS và bài toán phủ kín
- Bài 24: Bàn phím điện thoại đoán chữ bạn định gõ như thế nào? Cây Trie và mô hình n-gram
- Bài 23: Shazam nhận ra bài hát trong vài giây như thế nào? Dấu vân tay âm thanh và bảng băm
- Bài 22: Bầu cử và các cách đếm phiếu – Nghịch lý Condorcet và định lý Arrow
- Bài 21: Chia tiền nhóm sao cho ít lần chuyển khoản nhất? Thuật toán tham lam
- Bài 20: Spotify và YouTube nén âm thanh, video ra sao? Biến đổi Fourier giải thích đơn giản
- Bài 19: Đèn giao thông thông minh và luồng cực đại – Tìm nút cổ chai của thành phố
- Bài 18: Thang máy chọn tầng như thế nào? Thuật toán SCAN
- Bài 17: Xếp hàng ở siêu thị có thể tính trước? Lý thuyết hàng đợi
- Bài 16: Máy tính tạo số ngẫu nhiên thế nào? Từ xúc xắc trong game đến mã OTP
- Bài 15: Điện thoại nhận ra khuôn mặt bạn thế nào? Vector đặc trưng và khoảng cách
- Bài 14: Blockchain và Bitcoin hoạt động thế nào? Hàm băm và bằng chứng công việc
- Bài 13: Mã QR bị rách vẫn quét được? Bí mật của mã sửa lỗi Reed–Solomon
- Bài 12: Máy tính chơi cờ giỏi hơn người thế nào? Minimax, cắt tỉa alpha–beta và AlphaZero
- Bài 11: Chơi Wordle tối ưu bằng lý thuyết thông tin: entropy và thuật toán tìm kiếm
- Bài 10: Máy tính giải Sudoku trong tích tắc thế nào? Thuật toán quay lui và cắt nhánh
- Bài 9: Xếp lịch thi sao cho không ai bị trùng giờ? Bài toán tô màu đồ thị trong đời sống
- Bài 8: File ZIP nén dữ liệu như thế nào? Mã Huffman, LZ77 và thuật toán DEFLATE
- Bài 7: Shipper đi đường nào để giao hàng nhanh nhất? Bài toán người du lịch (TSP) trong đời sống
- Bài 6: Từ sửa lỗi chính tả đến giải mã DNA: khoảng cách chỉnh sửa và quy hoạch động
- Bài 5: Ứng dụng ngân hàng giữ tiền bạn an toàn thế nào? RSA, lũy thừa nhanh và hàm băm
- Bài 4: TikTok, YouTube, Netflix biết bạn thích gì? Thuật toán gợi ý hoạt động ra sao
- Bài 3: Vì sao Grab không luôn gọi tài xế gần nhất? Bài toán ghép cặp trên đồ thị hai phía
- Bài 2: Google xếp hạng hàng tỷ trang web thế nào? Thuật toán PageRank và chỉ mục ngược
- Bài 18: Thành tích Tin học giúp gì khi xét tuyển đại học và du học ngành Khoa học máy tính?
- Bài 17: Khi con chán học, mất động lực giữa chừng – Phụ huynh nên làm gì?
- Bài 1: Google Maps tìm đường nhanh nhất thế nào? Thuật toán Dijkstra và A* trong đời sống
- Bài 16: Hiểu rating Codeforces và VNOJ – Màu tên, thứ hạng và thế nào là con tiến bộ
- Bài 15: Con mê game – Có thể biến đam mê chơi game thành lập trình game không?
- Bài 14: Con nên học lập trình online hay học trực tiếp? Ưu nhược điểm của từng cách
- Bài 13: Mua máy tính nào cho con học lập trình? Cấu hình tối thiểu và có cần máy đắt không
- Bài 12: Học sinh giỏi Tin sau này làm nghề gì? Ngành học, lương và những con đường phía trước
- Bài 11: Lịch học một tuần mẫu cho học sinh luyện HSG Tin
- Bài 10: Lịch các kỳ thi Tin học năm học 2026–2027 phụ huynh cần biết
- Bài 9: Con thi trượt, nản – phụ huynh nên làm gì?
- Bài 8: Có ChatGPT rồi, con còn cần học lập trình? Dùng AI đúng cách để học
- Bài 7: Con đã học được gì sau 3 tháng? Cách phụ huynh đọc tiến bộ của con
- Bài 6: Học lập trình mà không hại mắt, hại giấc ngủ – cân bằng thời gian màn hình cho con
- Bài 5: Chọn thầy, chọn lớp lập trình cho con – 7 câu hỏi phụ huynh nên hỏi
- Bài 4: Con nên học ngôn ngữ lập trình nào trước? Scratch, Python hay C++
- Bài 3: Thi học sinh giỏi Tin cần chuẩn bị từ lớp mấy? Lộ trình theo từng cấp học
- Bài 2: Học thuật toán giúp gì cho tuyển sinh lớp 10 chuyên và đại học? (cập nhật 2026)
- Bài 1: Con có nên học lập trình thi đấu? Lợi ích, thử thách và cách bắt đầu đúng
- Bài 4: Dùng hệ thống chấm bài online cho lớp – ClueOJ, VNOJ và Codeforces dành cho giáo viên
- Bài 3: Tổ chức thi thử HSG Tin trong phòng máy – Bảng kiểm tra từ chuẩn bị máy đến chấm điểm
- Bài 2: Tạo bộ test chuẩn cho bài lập trình – Sinh test, đối chiếu lời giải trâu và đóng gói cho Themis
- Bài 1: Hướng dẫn cài đặt Themis – Phần mềm chấm bài lập trình offline cho giáo viên Tin học
- Đề thi HSG Tin học TP Hồ Chí Minh, Bình Dương, Bà Rịa – Vũng Tàu các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Hà Tĩnh các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Nghệ An các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Hà Nội các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Đà Nẵng, Quảng Nam các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Đồng Tháp, Tiền Giang các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Quảng Trị, Quảng Bình các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Đắk Lắk, Phú Yên các năm: lớp 9, vào 10 chuyên Tin, THPT
- Đề thi HSG Tin học An Giang, Kiên Giang các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Phú Thọ, Vĩnh Phúc, Hòa Bình các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Thanh Hóa các năm: lớp 9, vào 10 chuyên Tin, THPT
- Đề thi HSG Tin học Lâm Đồng, Đắk Nông, Bình Thuận các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Gia Lai, Bình Định các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Khánh Hòa, Ninh Thuận các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Quảng Ninh các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Ninh Bình, Nam Định, Hà Nam các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Quảng Ngãi, Kon Tum các năm: lớp 9, vào 10 chuyên Tin, THPT
- Đề thi HSG Tin học Cần Thơ, Sóc Trăng, Hậu Giang các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Vĩnh Long, Bến Tre, Trà Vinh các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Huế các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Lào Cai, Yên Bái các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Đồng Nai, Bình Phước các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Đề thi HSG Tin học Bắc Ninh, Bắc Giang các năm: lớp 9, vào 10 chuyên Tin, THPT, Tin học trẻ
- Gói giải đề tuyển sinh 10 chuyên Tin Hà Nội 2024 – 2026
- Gói giải đề HSG Tin học lớp 9 TP.HCM 2008 – 2026
- Gói giải đề HSG Tin học lớp 9 Hà Nội 2005 – 2026
- Gói giải đề tuyển sinh 10 chuyên Tin Phổ thông Năng khiếu TP.HCM 2004 – 2026
Học nhanh hơn với người kèm
Tự học theo lộ trình này là hoàn toàn được. Nhưng nếu bạn cần người chữa bài, chỉ ra lỗi sai và lên kế hoạch ôn thi sát với đề của tỉnh mình, mình luôn sẵn sàng đồng hành.
Nếu thấy lộ trình hữu ích, bạn để lại một lời bình luận hoặc chia sẻ cho bạn bè cùng học nhé. Đó là động lực rất lớn để mình viết thêm nhiều bài nữa! 💪
- Không biết học gì trước, học gì sau, học lan man nên kiến thức bị hổng.
- Bí bài không ai gỡ, ngồi cả buổi vẫn không ra rồi bỏ cuộc.
- Code chạy được nhưng không đủ điểm, không biết sai ở đâu, chậm ở đâu.
- Không có đề thi thử và người chấm, nên không biết mình đang ở mức nào.
- Dễ nản giữa chừng khi không có ai theo sát.
- Lộ trình 111 buổi video sắp sẵn từ dòng code đầu tiên đến đề HSG thật của các tỉnh.
- Thầy trực tiếp gỡ bí, chữa bài cho từng em qua nhóm Zalo riêng.
- Hệ thống chấm bài tự động 24/7 và thi thử HSG hằng tuần để biết chính xác mình đang ở đâu.
- Đóng học phí một lần, thầy kèm lâu dài: từ thi chuyên Tin đến HSG quốc gia và cả khi lên đại học.
Nhận xét
Đăng nhận xét