• VNOJ
  • Trang chủ
  • Danh sách bài
  • Các bài nộp
  • Thành viên
    >
    • Tổ chức
  • Các kỳ thi
  • Wiki
  • Thông tin
    >
    • FAQ
    • Trình chấm ngoài
    • Tag
    • Máy chấm
    • Devlog
    • Github
    • Tickets
    • Thư viện đề thi
    • Đề xuất contest
  • Tạp chí
VI EN Đăng nhập  hoặc  Đăng ký

Chào mừng bạn đến với VNOI Online Judge!

VNOJ - VNOI Online Judge là hệ thống online judge open source chính thức của VNOI, dựa trên nền tảng của hệ thống DMOJ.

VNOJ được tạo ra với mục đích xây dựng một môi trường luyện tập và cạnh tranh dành cho cộng đồng Tin Học Việt Nam. VNOJ là một hệ thống chấm bài tự động hoàn toàn độc lập của VNOI và là bước tiến tiếp theo trong quá trình di dời và nâng cấp VOJ.

Hiện nay, hệ thống VNOJ đã đưa trở lại kho bài tập rộng lớn từ hệ thống cũ VOJ (bao gồm các đề thi Học Sinh Giỏi Quốc Gia, ACM-ICPC, ... qua các năm). Kho bài tập này sẽ được cập nhật thường xuyên với những bài tập mới từ các kì thi, trong đó có những kì thi luyện tập trên VNOJ và những đề thi chính thức của VNOI.

Nếu đây là lần đầu tiên tham gia VNOJ, hãy đăng ký tài khoản. Sau đó, thử bài tập A cộng B.

  • Blog
  • Sự kiện
  • Tin tức
  • Blog

0

1000 subs

daolam2010 đã đăng vào 31, Tháng 3, 2026, 14:07

2000 next

daolam2010
o31, Tháng 3, 2026, 14:07 0

2

Road to have medal DH

Free_De_La_Zenith đã đăng vào 21, Tháng 3, 2026, 9:25

Hi

Free_De_La_Zenith
o21, Tháng 3, 2026, 9:25 0

8

giup toi upvote voi :(((

haductrithcstq đã đăng vào 17, Tháng 3, 2026, 9:05

tui can upvote de ko bi dong gop so am cuu tui vs

haductrithcstq
o17, Tháng 3, 2026, 9:05 0

-1

SIUU

PhuocTri đã đăng vào 29, Tháng 1, 2026, 14:30

112

PhuocTri
o29, Tháng 1, 2026, 14:30 0

-8

Em rất xin lỗi mọi người

pika68267 đã đăng vào 25, Tháng 1, 2026, 0:06

(em xin phep de tieng anh vi em ko bat telex duoc) many month ago, i have making a huge mess by making a war and disrespect everyone in the discord server today, i am very regret of my behaviour and want to sorry everyone:

  • sorry to the moderator of my bad behaviour
  • sorry to kuroni and lekienthanh for ragebaiting them( even if i don't mean like that) I can't control everyone but i hope no one will get offended by my mistake and hope that everyone will forgive me, even it is late to say
pika68267
o25, Tháng 1, 2026, 0:06 0

4

CP Algorithms Tiếng Việt :))))))))))

deanqkhanh đã đăng vào 21, Tháng 1, 2026, 2:57

🚀 CP-Algorithms Tiếng Việt: Phá Bỏ Rào Cản Ngôn Ngữ Trong Lập Trình Thi Đấu

Nếu bạn là một người đam mê thuật toán, chắc hẳn cái tên e-maxx hay CP-Algorithms đã quá quen thuộc. Đây là kho tàng kiến thức đồ sộ, nơi chứa đựng mọi thứ từ những thuật toán cơ bản đến những cấu trúc dữ liệu nâng cao nhất.

Tuy nhiên, việc tiếp cận bằng tiếng Anh đôi khi là một trở ngại lớn khiến nhiều bạn trẻ Việt Nam khó tiếp thu trọn vẹn tinh túy của bài viết. Đó chính là lý do dự án CP-Algorithms Tiếng Việt ra đời!

🌟 Tại sao bạn không nên bỏ lỡ trang web này?

Dự án không chỉ đơn thuần là dịch thuật, mà còn là nỗ lực mang lại trải nghiệm học tập gần gũi nhất cho cộng đồng Coder Việt:

  • Nội dung chuẩn xác: Các thuật toán được chuyển ngữ tỉ mỉ, giữ đúng thuật ngữ chuyên ngành nhưng vẫn đảm bảo sự dễ hiểu.
  • Đầy đủ mã nguồn: Giữ nguyên các đoạn code mẫu tối ưu, giúp bạn có thể thực hành ngay lập tức.
  • Hoàn toàn miễn phí: Truy cập mọi lúc, mọi nơi trên nền tảng GitHub Pages mượt mà.
📚 Bạn sẽ học được gì?

Từ những bước chân đầu tiên cho đến khi chinh phục các kỳ thi Olympic (VOI) hay kỳ thi quốc tế (ICPC), trang web bao hàm tất cả:

Chủ đề Nội dung nổi bật
Số học GCD/LCM, Số nguyên tố, Nghịch đảo modulo...
Quy hoạch động Các kỹ thuật tối ưu hóa QHĐ kinh điển.
Đồ thị DFS/BFS, Dijkstra, Luồng cực đại (Flow)...
Cấu trúc dữ liệu Segment Tree, Fenwick Tree, Treap...
Xử lý chuỗi KMP, Z-algorithm, Suffix Array...
🤝 Cùng nhau xây dựng cộng đồng

Đây là một dự án mở. Nếu bạn yêu thích thuật toán và muốn đóng góp cho cộng đồng, bạn hoàn toàn có thể tham gia hiệu đính hoặc dịch các bài viết mới. Mỗi đóng góp của bạn đều giúp lộ trình học tập của các thế hệ Coder Việt sau này trở nên bằng phẳng hơn.

Ghé thăm ngay tại: https://deanqkhanhcoder.github.io/cp-algorithms-vi/

Hãy chia sẻ bài viết này đến bạn bè và cùng nhau nâng tầm tư duy thuật toán của người Việt nhé! 🔥

deanqkhanh
o21, Tháng 1, 2026, 2:57 0

37

VNOI Wiki: Tham lam

dvtd đã đăng vào 17, Tháng 1, 2026, 3:23

🖐️ Xin chào các bạn, trong số lần này, VNOI Wiki xin giới thiệu đến các bạn bài viết về Thuật toán tham lam (Greedy Algorithm) - một trong những tư duy thuật toán quan trọng và là một chủ đề cực kỳ phổ biến trong giải thuật và lập trình.

🔗 Link bài viết: VNOI Wiki | Tham lam

✍️ Biên soạn: Nguyễn Hoàng Dương dnx04 - Trường Đại học Công nghệ, ĐHQGHN

✅ Reviewers:

  • Nguyễn Minh Nhật minhnhatnoe - Georgia Institute of Technology
  • Nguyễn Tấn Minh unknownnaciul - Trường Đại học Khoa học Tự nhiên, ĐHQG-HCM

  • Võ Đức Đoàn KAKOII - THPT Chuyên Nguyễn Tất Thành, Quãng Ngãi

💖 VNOI chân thành cảm ơn đội ngũ Admin và TNV đã không ngừng đóng góp, biên soạn và hoàn thiện kho tri thức thuật toán chất lượng cao cho cộng đồng.

dvtd
o17, Tháng 1, 2026, 3:23 2

-4

giải K-dominant Subarray

HaDat_Python đã đăng vào 3, Tháng 1, 2026, 11:06

include <bits></bits>

using namespace std;

int main(){ ios::syncwithstdio(false); cin.tie(nullptr);

int N, K;
cin >> N >> K;
vector<long long> a(N);
for(int i = 0; i < N; i++) cin >> a[i];

unordered_map<long long, vector<int>> pos;
pos.reserve(N * 2);

for(int i = 0; i < N; i++)
    pos[a[i]].push_back(i + 1);

long long ans = 0;

for(auto &p : pos){
    auto &v = p.second;
    int t = v.size();
    if(t < K) continue;

    for(int i = 0; i + K - 1 < t; i++){
        for(int j = i + K - 1; j < t; j++){
            int c = j - i + 1;
            int maxLen = 2 * c - 1;

            int Lmin = v[j] - maxLen + 1;
            int Lmax = v[i];

            int Rmin = v[j];
            int Rmax = v[i] + maxLen - 1;

            Lmin = max(Lmin, 1);
            Lmax = min(Lmax, v[i]);

            Rmin = max(Rmin, v[j]);
            Rmax = min(Rmax, N);

            if(Lmin > Lmax || Rmin > Rmax) continue;

            long long total = 1LL * (Lmax - Lmin + 1) * (Rmax - Rmin + 1);
            ans += total;
        }
    }
}

cout << ans;

}

HaDat_Python
o3, Tháng 1, 2026, 11:06 0

-2

K-Dominant Subarray

HaDat_Python đã đăng vào 3, Tháng 1, 2026, 11:02

Cho mảng gồm 𝑁 N số nguyên dương 𝐴 1 , 𝐴 2 , … , 𝐴 𝑁 A 1 ​

,A 2 ​

,…,A N ​

và một số nguyên 𝐾 K.

Một đoạn con liên tiếp [ 𝐿 , 𝑅 ] [L,R] được gọi là K-dominant nếu tồn tại một giá trị 𝑋 X sao cho:

số lần xuất hiện của 𝑋 X trong đoạn lớn hơn tổng số lần xuất hiện của tất cả các giá trị khác trong đoạn (tức là 𝑓 𝑟 𝑒 𝑞 ( 𝑋 ) > ( 𝑅 − 𝐿 + 1 ) − 𝑓 𝑟 𝑒 𝑞 ( 𝑋 ) freq(X)>(R−L+1)−freq(X))

và đồng thời 𝑓 𝑟 𝑒 𝑞 ( 𝑋 ) ≥ 𝐾 freq(X)≥K.

Hãy đếm số lượng đoạn con K-dominant.

Ràng buộc:

1 ≤ 𝑁 ≤ 2 × 10 5 1≤N≤2×10 5

1 ≤ 𝐴 𝑖 ≤ 10 9 1≤A i ​

≤10 9

1 ≤ 𝐾 ≤ 𝑁 1≤K≤N

Input:

N K A1 A2 ... AN

Output: In ra một số nguyên là số đoạn con K-dominant.

Ví dụ:

Input 6 2 1 2 2 2 3 2

Output 7

HaDat_Python
o3, Tháng 1, 2026, 11:02 0

-5

hello

SoMotThanhXuan đã đăng vào 22, Tháng 12, 2025, 2:40

downvote toi di

SoMotThanhXuan
o22, Tháng 12, 2025, 2:40 1
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • ...
  • 36
  • 37
  • »

Các kỳ thi đang diễn ra

Kỳ thi chọn Đội tuyển HSGQG TPHCM năm 2025
Kết thúc trong 3 ngày 16:04:24.

Top thành viên

# Tên truy cập Rating
1
fextivity
3236
2
hollwo_pelw
2806
3
minhcool
2800
4
Hollowed
2785
5
marvinthang
2759
Tổ chức Xem đầy đủ >>>

Top đóng góp

# Tên truy cập Đóng góp
1
dquynh_2811
1464
2
I_love_Hoang_Yen
649
3
Mike4235
582
4
ntkwan
575
5
PhuocThien
535
Xem đầy đủ >>>

Dòng bình luận Discord

  • Harry_Wright_1 → VOI 26 Bài 4 - Tất niên
  • nguyenminhtuaan → Atcoder Educational DP Contest L - Deque
  • happynewy920 → VM 14 Bài 05 - Quá béo
  • nguyenminhtuaan → Olympic Sinh viên 2025 - Khối Siêu cúp
  • longvn2013 → A cộng B
  • ijk → VOI 14 Bài 4 - Trò Chơi Với Những Viên Bi
  • vidueduo → Vua Kẹo
  • qtranvan420 → Olympic 30/4 2016 - Khối 10 - Bài 1 - Quân mã
  • HeIIoWorld → Free Contest Cup 2023 - LIS
  • giangk7615 → Hướng giải cho VM 10 Bài 08 - Tích
RSS / Atom

Bài mới

  • TST 2025 - Bài 6
  • TST 2025 - Bài 5
  • TST 2025 - Bài 4
  • TST 2025 - Bài 3
  • TST 2025 - Bài 2
  • TST 2025 - Bài 1
  • Dò mìn
RSS / Atom

dựa trên nền tảng DMOJ | theo dõi VNOI trên Github và Facebook