BOJ (Baekjoon Online Judge)

BOJ stands for Baekjoon Online Judge, and it is South Korea's largest online algorithm problem-solving and judging platform.

BOJ (Baekjoon Online Judge)

Overview

BOJ stands for Baekjoon Online Judge, and it has been in operation since 2010 as South Korea's largest online algorithm problem-solving and automated judging platform. It provides a "Judge" system that automatically compiles and runs source code submitted by users on its servers and determines correctness using pre-prepared test cases. With more than 30,000 problems and hundreds of thousands of registered users, it has established itself as the de facto standard infrastructure for algorithm study in Korea.

Main Content

History and Operation

BOJ began in March 2010 as a personal project by Choi Baek-joon (최백준), a developer and algorithm instructor whose handle is "baekjoon." In its early days it offered only a small problem set and simple judging, but its features rapidly expanded afterward based on user suggestions and contributions. Today, problems submitted directly by an operating foundation, volunteers, and users have accumulated to form a vast problem bank. The site is broadly composed of Problems, Submissions, Ranking, Group, and Contest features.

Problem Types and Difficulty

BOJ's problems span every field of computer science, including mathematics, implementation, data structures, graph theory, dynamic programming (DP), greedy algorithms, sorting, strings, geometry, and number theory. Each problem is assigned a difficulty rating, expressed intuitively through the so-called "solved.ac tier" system. The six levels — Bronze, Silver, Gold, Platinum, Diamond, and Ruby — are each divided into five sub-ratings, for a total of 30 levels. These tiers are widely used as an indicator of a user's problem-solving ability.

Judging System and Languages

BOJ supports dozens of programming languages, including C, C++, Java, Python, Kotlin, Go, Rust, JavaScript, and C#, and submitted code is executed in a sandboxed environment. Judging results are classified as "Accepted (AC)," "Wrong Answer (WA)," "Time Limit Exceeded (TLE)," "Memory Limit Exceeded (MLE)," "Runtime Error (RE)," and "Compile Error (CE)," among others, giving users feedback. Each problem specifies time and memory limits, so submissions are evaluated not only on correctness but also on efficiency.

Learning Ecosystem

Beyond a mere judge, BOJ functions as a learning community. It offers systematic learning paths such as "Step-by-Step Problem Solving," "Algorithm Classification," "Problem Sets," "Random Defense," and "solved.ac Class," and user-created "study groups" and "contests" operate actively. Third-party tools such as solved.ac, BOJ extensions, and BaekjoonHub (GitHub integration) have expanded the ecosystem.

Domestic and International Standing

It is used as a core platform for algorithm courses at Korean universities, preparation for corporate coding tests, and preparation for the Informatics Olympiad (KOI/IOI) and the ICPC (International Collegiate Programming Contest). It is used alongside overseas judges such as Codeforces and AtCoder, and thanks to its Korean-language support and specialization in domestic problems, the proportion of Korean users is overwhelmingly high.

Latest Trends

As of 2024–2025, BOJ is undergoing changes in response to the era of generative AI. As LLMs such as ChatGPT and Claude solve algorithm problems to a considerable level, there is active discussion that the discriminating power of simple problem-solving ability is weakening. Accordingly, in contests and corporate coding tests, the trend in problem design is shifting toward valuing problem interpretation, optimization, and collaboration skills over simple implementation. BOJ is strengthening cheating detection and verification of submission records in order to ensure contest fairness. In addition, support for modern languages such as Rust and Kotlin is expanding, solved.ac statistics and badge features are being enhanced, and server infrastructure is being continuously improved to withstand large-scale user traffic. Recently, amid a boom in algorithm education for elementary and middle school students, BOJ is also being actively used as teaching material in gifted software education institutions and after-school coding classes, and its younger user base is growing rapidly.

Related Topics

  • [[solved.ac]]
  • [[Algorithm]]
  • [[Coding Test]]
  • [[ICPC]]
  • [[Informatics Olympiad]]
  • [[Dynamic Programming]]
  • [[Data Structures]]
  • [[Codeforces]]