Cập nhật link báo test lỗi tại trang Xem kết quả chấm
03/03/2026, 23:56:04
Khoản ủng hộ của bạn sẽ được sử dụng để:
Số TK: 0380 7239 688
Quét mã QRcode để chuyển khoản
Cảm ơn bạn rất nhiều!
VNOJ Online Judge là nền tảng học tập và rèn luyện tư duy toán học, giúp học sinh phát triển khả năng lập luận logic thông qua việc giải quyết các bài toán bằng các ngôn ngữ lập trình khác nhau. Hệ thống hỗ trợ nhiều ngôn ngữ như: Pascal, C, C++, Java, Python, Scratch…
Tuy nhiên, VNOJ.IO.VN lựa chọn C++ làm ngôn ngữ trọng tâm phù hợp với học sinh THCS–THPT, góp phần rèn luyện tư duy toán học và lập luận logic, đồng thời giúp các em dễ dàng tiếp cận các ngôn ngữ lập trình khác sau này. Hiện tại cũng có thể chọn nộp bằng Pascal, Python, Java, C#, Scratch.
Hệ thống được xây dựng nhằm phục vụ miễn phí cho mục đích học tập và rèn luyện kỹ năng giải các bài toán cho học sinh. Người dùng có thể luyện tập mọi lúc bằng cách nộp chương trình để hệ thống tự động chấm và đánh giá kết quả.
Sau khi nộp bài, thành viên có thể xem kết quả chấm theo từng test dữ liệu để hiểu rõ hơn về lời giải của mình. Nếu phát hiện test dữ liệu hoặc nội dung bài tập có sai sót, người dùng có thể báo cáo trực tiếp trên hệ thống để ban quản trị kiểm tra và điều chỉnh.
Để đảm bảo môi trường học tập nghiêm túc và hệ thống hoạt động ổn định, người dùng không được phép:
Các trường hợp cố tình sử dụng hệ thống sai mục đích có thể bị nhắc nhở, khóa tạm thời hoặc khóa vĩnh viễn tùy theo mức độ vi phạm.
Chúng tôi mong rằng mỗi thành viên sẽ sử dụng hệ thống một cách nghiêm túc, đúng mục đích học tập, cùng góp phần xây dựng một môi trường rèn luyện hiệu quả và lành mạnh cho cộng đồng.
| Tên bài | Tên chương trình | Điểm | Thời gian | Bộ test |
|---|---|---|---|---|
| Câu 1 | Cau1.* | 4,0 | 1 giây | Mỗi câu 40 test, mỗi test 0,1 điểm |
| Câu 2 | Cau2.* | 4,0 | 1 giây | Mỗi câu 40 test, mỗi test 0,1 điểm |
| Câu 3 | Cau3.* | 4,0 | 1 giây | Mỗi câu 40 test, mỗi test 0,1 điểm |
| Câu 4 | Cau4.* | 4,0 | 1 giây | Mỗi câu 40 test, mỗi test 0,1 điểm |
| Câu 5 | Cau5.* | 4,0 | 1 giây | Mỗi câu 40 test, mỗi test 0,1 điểm |
Cho một số tự nhiên \( a \), ta gọi số ước của \( a \) là số lượng các số tự nhiên \( b \) khác nhau mà \( a : b \). Ví dụ: \( a = 4 \) thì \( U(a) = \{1,2,4\} \), ta nói 4 là số có 3 ước.
Bài toán đếm ước đã từ lâu là bài toán cơ bản mà bất kì học sinh nào cũng phải học. Hôm nay thầy giáo yêu cầu như sau: Cho trước 3 số tự nhiên L, R, K. Hãy đếm số lượng số tự nhiên thuộc đoạn [L, R] mà có đúng K ước.
Dữ liệu vào: Một dòng gồm 3 số L, R, K (2 ≤ L ≤ R ≤ 1014, 2 ≤ K ≤ 1014) Kết quả: Ghi ra số lượng số tự nhiên thuộc đoạn [L,R] mà có đúng K ước.
| Dữ liệu vào | Dữ liệu ra | Giải thích |
|---|---|---|
| 2 10 2 | 4 | Có 4 số có 2 ước trong đoạn [2,10] là: 2,3,5,7 |
| 1 10 2 | 4 | Test đề gốc: bỏ vì L = 1, vi phạm điều kiện |
| TT | Ngôn ngữ | Thời gian | Bộ nhớ | Số phép toán tối đa (≈) | Giới hạn n (O(n2)) | Giải thích |
|---|---|---|---|---|---|---|
| 1 | Pascal | 2 giây | 30 MB | 2 × 108 | ≤ 14000 | \(\sqrt{2\times10^8} \approx 14142 \Rightarrow \text{đặt an toàn} \le 14000\) |
| 2 | C++ | 2 giây | 30 MB | 2 × 108 | ≤ 14000 | \(\sqrt{2\times10^8} \approx 14142 \Rightarrow \text{đặt an toàn} \le 14000\) |
| 3 | Java | 2 giây | 100 MB | 1 × 108 | ≤ 10000 | \(\sqrt{1\times10^8} = 10000 \Rightarrow \text{đặt an toàn} \le 10000\) |
| 4 | Python | 2 giây | 100 MB | 2 × 107 | ≤ 4500 | \(\sqrt{2\times10^7} \approx 4472 \Rightarrow \text{đặt an toàn} \le 4000–4500\) |
| 5 | Scratch 3 | 2 giây | 100 MB | 3 × 105 | ≤ 500 | \(\sqrt{3\times10^5} \approx 547 \Rightarrow \text{đặt an toàn} \le 500\) |
Kiến thức cơ bản 1: Sàng phân đoạn.
https://vnoj.io.vn/problem/thcssimacai_tin9hy2526bai5
Kiến thức cơ bản 2: Kiểm tra số nguyên tố O(logn)
https://judge.yosupo.jp/problem/primality_test
Kiến thức cơ bản 3: Nhân đa thức nhanh.
https://judge.yosupo.jp/problem/convolution\_F\_2\_64
Kiến thức cơ bản 4: Dp với thành phần liên thông.
https://dmoj.ca/problem/joi16op3
Kiến thức cơ bản 5: Chia căn.
https://codeforces.com/problemset/problem/2115/F1
Kiến thức cơ bản 6: Dp với Lagrangian Relaxation.
https://codeforces.com/problemset/problem/2183/H
Bài điểm càng thấp thì cần càng nhiều kiến thức do dạng đề bảo. (Kiến thức cơ bản 1 là bài 3 điểm, không phải 8 điểm). Hướng dẫn cách làm các dạng cực cơ bản bên trên sẽ đc để dưới đây hoặc trong các blog sau.
Các bạn chỉ cần đọc hiểu và làm đúng các bài cơ bản trên là đã quá trình thi Quốc gia, chứ không phải học sinh giỏi tỉnh.
| Buổi | Nội dung | Chi tiết | Địa điểm | Ghi chú |
|---|---|---|---|---|
| Buổi 1 | Các phép toán số học, lệnh xuất chuẩn, số chữ số thập phân | Cộng, trừ, nhân, chia, chia lấy phần nguyên, chia lấy phần dư | Trực tiếp | Làm quen, học thử |
| Buổi 2 | Kiểu dữ liệu, khai báo và sử dụng hằng, biến, lệnh nhập, xuất chuẩn | Cộng, trừ, nhân, chia, chia lấy phần nguyên, chia lấy phần dư bằng lệnh nhập, xuất chuẩn. Cộng trừ, nhân, chia phân số. Dữ liệu cặp: pair <Kiểu1, Kiểu2> p; | Trực tiếp | Làm quen, học thử |
| LT1 | Tự làm các bài tập trong giới hạn kiến thức đã học | Tự học | https://vnoj.io.vn | Tự luyện tập, nộp, chấm online |
| Buổi 3 | Các phép so sánh và phép toán logic, câu lệnh điều kiện | Lệnh if, if … else, thay thế lệnh if … else, switch case … | Trực tiếp | Chính thức buổi 1 |
| LT2 | Tự làm các bài tập trong giới hạn kiến thức đã học | Tự học | https://vnoj.io.vn | Tự luyện tập, nộp, chấm online |
| Buổi 4 | Câu lệnh lặp | Câu lệnh lặp for | Trực tiếp | Chính thức buổi 2 |
| Buổi 5 | Câu lệnh lặp | Câu lệnh while, do - while | Trực tiếp | Chính thức buổi 3 |
| LT3 | Tự làm các bài tập trong giới hạn kiến thức đã học | Tự học | https://vnoj.io.vn | Tự luyện tập, nộp, chấm online |
| Buổi 6 | Mảng một chiều (số nguyên, số thực) | Mảng tĩnh: int a[100005]; | Trực tiếp | Chính thức buổi 4 |
| Buổi 7 | Mảng một chiều (số nguyên, số thực) | Mảng động: vector<Kiểu dữ liệu> a; | Trực tiếp | Chính thức buổi 5 |
| LT4 | Tự làm các bài tập trong giới hạn kiến thức đã học | Tự học | https://vnoj.io.vn | Tự luyện tập, nộp, chấm online |
| Buổi 8 | Xâu kí tự, kí tự | Xử lí xâu, chuẩn hóa … | Trực tiếp | Chính thức buổi 6 |
| Buổi 9 | Xâu kí tự, kí tự | Xử lí xâu, chuẩn hóa … | Trực tiếp | Chính thức buổi 7 |
| Buổi 10 | Luyện tập tổng hợp | 04 câu đủ các cấu trúc tuần tự, rẽ nhánh và dữ liệu có cấu trúc (xâu, mảng) | Trực tiếp | Chính thức buổi 8 |
| Lâu dài | Sau 10 buổi học trực tiếp kết hợp luyện tập online đúng lộ trình học sinh đủ khả năng lựa chọn học tiếp hoặc tự học nâng cao, dễ dàng tiếp cận các ngôn ngữ khác. | Tổng hợp | https://vnoj.io.vn | Tự luyện tập, nộp, chấm online |