Toán tin
Rất nhiều bài thi lập trình thực chất là bài toán. Viết vòng lặp đếm từ 1 tới n thì ai cũng làm được, nhưng khi n lên tới 1018 thì chỉ ai biết công thức mới giải kịp thời gian. Toán tin là phần toán giúp các em viết chương trình đúng và nhanh.
Mỗi bài trong mục này gồm:
- Lý thuyết giải thích bằng cách nhìn đơn giản nhất, có ví dụ giải mẫu.
- Chương trình Python và C++ cho từng ý quan trọng.
- Bài luyện tập có đáp số để tự kiểm tra (miễn phí). Lời giải chi tiết các bài luyện tập có trong bộ tài liệu có phí.
Dành cho ai?
Phần tiêu đề “Dành cho ai?”- Học sinh THCS, THPT ôn thi học sinh giỏi Tin học và tuyển sinh chuyên Tin lớp 10.
- Học sinh thi Tin học trẻ Bảng B, C (lập trình Python, C++).
- Thầy cô dạy đội tuyển cần tài liệu có hệ thống.
Mức độ
Phần tiêu đề “Mức độ”Mỗi bài có icon mức độ trong mục lục và ở đầu bài:
Cơ bản
Phần tiêu đề “ Cơ bản”Kiến thức Toán cơ bản (nhiều phần học từ tiểu học), học cách dùng trong chương
trình. Các em nên bắt đầu từ đây.
Nâng cao
Phần tiêu đề “ Nâng cao”Kiến thức cho thi học sinh giỏi cấp tỉnh, tuyển sinh chuyên Tin lớp 10.
Chuyên sâu
Phần tiêu đề “ Chuyên sâu”Kiến thức cho thi học sinh giỏi quốc gia, lập trình thi đấu (ICPC).
Ước lượng thời gian chạy
Phần tiêu đề “Ước lượng thời gian chạy”Các bài trong mục này thường so sánh hai cách làm bằng số phép tính. Để đổi ra thời gian, ta dùng một ước lượng quen thuộc: máy tính làm được khoảng 108 phép tính đơn giản mỗi giây với C++. Python thường chậm hơn nhiều lần. Thời gian thật còn phụ thuộc máy, trình biên dịch và cách viết code, nên các con số thời gian trong bài chỉ để so sánh cỡ lớn, không phải số đo chính xác.
| Số phép tính | Ước lượng (C++) |
|---|---|
| 106 | rất nhanh |
| 108 | khoảng 1 giây |
| 1012 | khoảng 3 tiếng |
| 1018 | hơn 300 năm |
Đề thi thường giới hạn khoảng 1 giây cho mỗi test, nên cần chọn cách làm có số phép tính ở mức 107 đến 108 trở xuống.
Các chuyên đề
Phần tiêu đề “Các chuyên đề”Số học
Phần tiêu đề “Số học”Tổ hợp và đếm
Phần tiêu đề “Tổ hợp và đếm”| Bài | Mức độ |
|---|---|
| Quy tắc cộng, quy tắc nhân | |
| Hoán vị, chỉnh hợp, tổ hợp | |
| Nguyên lý bù trừ | |
| Nguyên lý Dirichlet | |
| Quy hoạch động chữ số |
Dãy số
Phần tiêu đề “Dãy số”| Bài | Mức độ |
|---|---|
| Cấp số cộng, cấp số nhân | |
| Tổng tiền tố và mảng hiệu | |
| Dãy truy hồi |
Biểu diễn số
Phần tiêu đề “Biểu diễn số”| Bài | Mức độ |
|---|---|
| Hệ nhị phân và hệ cơ số | |
| Phép toán bit |
Hình học tọa độ
Phần tiêu đề “Hình học tọa độ”| Bài | Mức độ |
|---|---|
| Điểm, khoảng cách và tích có hướng | |
| Diện tích đa giác và điểm nguyên |
Lý thuyết trò chơi
Phần tiêu đề “Lý thuyết trò chơi”| Bài | Mức độ |
|---|---|
| Vị trí thắng, vị trí thua | |
| Trò chơi Nim và định lý Sprague-Grundy |
Luyện đề
Phần tiêu đề “Luyện đề”Sau khi học xong một chuyên đề, các em luyện đề thật để quen với cách ra đề: