• DMOJ
  • Home
  • Problems
  • Submissions
  • Users
  • Contests
  • About
    • Status
    • Tips
    • API
    • Github
Log in  or  Sign up

Welcome to the DMOJ: Modern Online Judge!

The DMOJ is a modern contest platform and archive of programming problems. It's also entirely open source.

So far, 84613 developers have submitted to 3409 problems a total of 3327243 times, using 66 languages.

If this is your first visit, please register an account. Then, try the Hello, World! problem.

  • Blog
  • Events

News

PEG accounts and problems are now accessible

Xyene posted on Sept. 8, 2020, 12:25 p.m. 13

Hi all,

We are happy to announce that PEG accounts and problems have been migrated to DMOJ, and can now be accessed.

Some usernames on PEG could not be assigned on DMOJ, as they were already in use. A _wcipeg suffix was added to the PEG username in these cases. You can check this list to see if this applies to you.

PEG accounts may be merged into existing DMOJ accounts (in the case you had an account on both DMOJ and PEG, and would like to merge them into one). To initiate this process, visit your profile page while logged in to your PEG account, and follow the instructions.

All PEG submissions were regraded on DMOJ judge hardware to keep rankings consistent. You may view a spreadsheet of aggregate rejudging results here. Submissions to a number of problems (mainly IOI) have not yet been assigned to migrated accounts, but will become available in the coming days.

Feel free to let us know of any questions you may have in the comments, in Slack, or by email.

UTS Open '21

Dormi, zxyl, 4fecta, glasa posted on Jan. 25, 2021, 12:28 p.m. 1

From February 5th to February 7th, we are ecstatic to host the third triennial (?) UTS Open contest! With the CCC in less than 2 weeks, this contest will be a great opportunity to hone and sharpen your problem solving skills. The difficulty of the problems will range from CCC Junior to CCO level, so there is definitely something to look forward to in this contest regardless of your skill level!

Anyone with a DMOJ account is welcome to participate, and anyone without one is welcome to register and participate.

Contestants may participate in any 3-hour window between February 5th, 00:00 EST to February 7th, 23:59 EST. Please see the contest page for more details.

Best of luck to all participants!

Wesley's Anger Contest 6

wleung_bvg, aeternalis1, Zeyu, Pookmeister, Riolku posted on Jan. 17, 2021, 6:13 p.m. 0

From January 23rd to January 24th, we'll be hosting Wesley's Anger Contest 6!

After receiving feedback on the previous contests, we have decided to add an additional problem at the beginning of the contest. We expect this problem to be easier than all previous WAC problems. The contest will be post-Christmas themed! The problem authors will be wleung_bvg, Zeyu, aeternalis1, Riolku and Pookmeister.

Anyone with a DMOJ account is welcome to participate, and anyone without one is welcome to register and participate.

Contestants may participate in any 4-hour window between January 23rd, 09:00 EST to January 24th, 23:59 EST. Please see the contest page for more details.

Good luck to all the participants!

DMOPC '20 November Contest

Kirito, PrimeNet, zhouzixiang2004, richardzhang posted on Nov. 28, 2020, 9:24 p.m. 0

Thanks for participating in the DMOPC '20 November Contest!

Congratulations to the top 5 contestants!

  1. bruce (perfect score)
  2. d
  3. SourSpinach
  4. wleung_bvg
  5. crackersamdjam

See you next month!


From Saturday, December 5th to Monday, December 7th, we'll be hosting the November DMOJ Monthly Open Programming Contest!

Anyone with a DMOJ account is welcome to participate, and anyone without one is welcome to register and participate.

Contestants may participate in any 3-hour window between 9:00:00 EST of December 5th and 00:00:00 EST of December 7th. Please see the contest page for more details.

See you soon!

DMOPC '20 October Contest

Kirito, richardzhang, AvaLovelace posted on Oct. 16, 2020, 4:56 p.m. 0

Thanks for participating in the DMOPC '20 October Contest!

Congratulations to the top 5 contestants!

  1. bqi343 (perfect score)
  2. Plasmatic
  3. crackersamdjam
  4. SourSpinach
  5. d

See you next month!


From Saturday, October 10th to Monday, October 12th, we'll be hosting the October DMOJ Monthly Open Programming Contest!

Anyone with a DMOJ account is welcome to participate, and anyone without one is welcome to register and participate.

Contestants may participate in any 3-hour window between 10:10:10 EDT of October 10th and 23:59:00 EDT of October 12th. Please see the contest page for more details.

See you soon!

Wesley's Anger Contest 5

wleung_bvg, aeternalis1, Zeyu, Pookmeister posted on Aug. 2, 2020, 8:56 p.m. 0

From August 7th to August 10th, we'll be hosting Wesley's Anger Contest 5! The difficulty of the problems will be similar to a typical Wesley's Anger Contest. In addition, Zeyu, Pookmeister, and aeternalis1 decided to make all the problems squirrel themed!

Anyone with a DMOJ account is welcome to participate, and anyone without one is welcome to register and participate.

Contestants may participate in any 3-hour window between August 7th, 09:00 EDT to August 10th, 23:59 EDT. Please see the contest page for more details.

Good luck to all the participants!

The PEG judge is merging with DMOJ

Xyene posted on July 22, 2020, 5:15 p.m. 12

Hi all,

At the end of July, the PEG judge will merge into DMOJ.

DMOJ drew inspiration heavily from PEG in the beginning, and it's fair to say that DMOJ would not have begun had it not been for PEG — we're excited to carry on their legacy moving forward.

The migration FAQ can be read here. If you have any questions not covered there, feel free to let us know via the comments.

The ~700 unique PEG problems are being uploaded on an ongoing basis, and can be accessed by joining the temporary WCIPEG Migration organization. Any submissions made (and points earned!) during this time will carry forward to when the problems are merged into the main problemset, so we encourage everyone to try the problems out and let us know of issues that may come up. Once in the organization, the problems may be accessed here.

This migration is a colossal effort, so I'd like to thank the PEG admins as well as c, Bit, Ninjaclasher, Pookmeister, Kirito, wleung_bvg, xiaowuc1, Plasmatic, JoshuaL, ManchurioX, WallE256, quantum, and FatalEagle for making it happen. If you're interested in helping out, just send us a ping in Slack, or leave a comment — there's no shortage of things to do :)

August 11 Update

A quick update on the state of the migration:

  • Almost all problem testdata has been migrated.
  • Problem statements for 459 of 729 problems unique to PEG have been ported.
  • 400K of 600K PEG submissions have been regraded. Further regrading may be necessary while we adjust time limits to be consistent with DMOJ judges.

Once we've finished processing submissions, PEG user accounts will become available to log in to. At that time, problems will be moved to the main problemset on a rolling basis.

Algorithmic Thinking: A Problem-Based Introduction

posted on June 18, 2020, 11:21 p.m. 2

Hi DMOJ!

Dr. Daniel Zingaro "yeerk16" of the University of Toronto has recently been working on a book introducing contest programming concepts in a practical way. It's nearing completion, so we thought we'd let you know! I'll let Dr. Zingaro handle the introduction:

Programming is about using a computer to solve problems, and algorithms and data structures are the building blocks of computer programs. For each problem that a programmer wants to solve, they employ an algorithm: a sequence of steps for solving the problem. Many books teach algorithms independently of specific problems, but this book uses careful explanations, examples, and arguments, rather than formal mathematics and proofs which make it difficult for you to connect what you are learning to what you can do with that learning. Algorithmic Thinking: A Problem-Based Introduction teaches you to use the best algorithms and data structures for a given situation by walking you through solving problems pulled from international programming competitions, such as how to determine whether snowflakes are unique; how to win a game in the minimum number of moves; how to find the number of ways to get to someone's house; how to escape a cave in as few steps as possible; and so on.

You'll tackle challenging topics like recursion, dynamic programming, graphs, greedy algorithms, heaps, hash tables, segment trees, and other data structures for efficiently handling data. The book contains no pseudocode: all code is written in C and is thoroughly explained in the text (C is a de facto programming language for programming competitions). By the end of the book, you should understand the importance of carefully working through a problem, and why it pays to organize data using data structures.

Algorithmic Thinking: A Problem-Based Introduction will be out in print in October, but it's available as an Early Access ebook now. Chapters will become available as soon as they're copyedited; the first four chapters are available now (including a free first chapter), and the rest will follow in a few weeks.

The book uses problems from various online judges (including DMOJ!) as exercises, which sounds like a fun, hands-on way to pick up new tricks.

We're also excited to give away some copies in future DMOJ competitions, so watch out for that :)

DMOPC '19 April Contest

Kirito, richardzhang, george_chen, little_prince, KevinWan, AvaLovelace, Tzak posted on April 27, 2020, 9:11 p.m. 0

Thanks for participating in the DMOPC '19 April Contest!

Congratulations to the top 5 contestants!

  1. bqi343 (perfect score)
  2. 300iq (perfect score)
  3. bruce
  4. zhouzixiang2004
  5. Eliden

We hope you enjoyed the contest!


From Monday, May 4th to Wednesday, May 6th, we'll be hosting the April* DMOJ Monthly Open Programming Contest!

Anyone with a DMOJ account is welcome to participate, and anyone without one is welcome to register and participate.

Contestants may participate in any 4-hour window between 09:00 EDT of May 4th and 23:59:00 EDT of May 6th. Please see the contest page for more details.

See you soon!

*We cannot guarantee the existence of April in this contest. We apologize in advance for any month related bamboozling.

Wesley's Anger Contest 4

wleung_bvg, aeternalis1, Zeyu, Pookmeister posted on April 12, 2020, 12:37 a.m. 4

From April 26th to April 28th, we'll be hosting Wesley's Anger Contest 4! With the CCO quickly approaching, this contest will be a great way to practice your problem solving skills. The difficulty of the problems will be similar to a typical Wesley's Anger Contest. In addition, Zeyu, Pookmeister, and aeternalis1 decided to make all the problems squirrel themed!

Anyone with a DMOJ account is welcome to participate, and anyone without one is welcome to register and participate.

Contestants may participate in any 4-hour window between April 26th, 09:00 EDT to April 28th, 23:59 EDT. Please see the contest page for more details.

Good luck to all the participants!

  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • ...
  • 17
  • 18
  • »

Upcoming contests

UTS Open '21
Starting in 9 days 16:19:28 .

Comment stream Slack

  • Badmode → UTS Open '21
  • Riolku → Editorial for Wesley's Anger Contest 6 Problem 3 - Difference Sorting
  • noYou → UTS Open '21
  • GeeTransit → Editorial for Wesley's Anger Contest 6 Problem 3 - Difference Sorting
  • Tony1234 → UTS Open '21
  • DM__Oscar → UTS Open '21
  • Blackgaurdian3 → UTS Open '21
  • pgupta1 → VM7WC '16 #3 Silver - Can Shahir even get there?!
  • Subway_Man → CCC '07 S5 - Bowling for Numbers
  • julian33 → VM7WC '16 #3 Silver - Can Shahir even get there?!
RSS / Atom

New problems

  • Wesley's Anger Contest 6 Problem 8 - Crystal Disco
  • Wesley's Anger Contest 6 Problem 7 - SantaTracker++
  • Wesley's Anger Contest 6 Problem 6 - Santa's Candy Factory
  • Wesley's Anger Contest 6 Problem 5 - Canadian Christmas Cactus
  • Wesley's Anger Contest 6 Problem 4 - Runway Lights
  • Wesley's Anger Contest 6 Problem 3 - Difference Sorting
  • Wesley's Anger Contest 6 Problem 2 - Cheap Christmas Lights
RSS / Atom

fork us on Github | like us on Facebook | help us translate | terms of service |