Skip to content

About DSA Mastery

How to study here

  1. Read a section in English, Hinglish, or both. Use the EN / HI / Both switch at the top. Your choice is remembered.
  2. Run the visualiser on the book’s example first, then on your own input. Step backwards whenever something surprises you. The highlighted Java line shows where you are in the code.
  3. Mark the section done only when you could explain it to a friend.
  4. Take the chapter quiz, then solve the CSES problems in Java, roughly in the listed order.
  5. Revise with the cheat sheets and flashcards on the Revision page.

Visualiser shortcuts: click a visualiser, then Space play/pause, ← → step, Home / End jump. Press / anywhere to search.

  1. Section padho — English, Hinglish ya dono mein. Upar EN / HI / Both switch hai, aur tumhari choice yaad rehti hai.
  2. Visualiser chalao — pehle book ke example pe, phir apne input pe. Kuch ajeeb lage toh peeche step karo. Highlighted Java line batati hai ki code mein abhi kahan ho.
  3. Section done mark karo — tabhi jab kisi dost ko samjha sako.
  4. Chapter quiz do, phir CSES problems Java mein solve karo, lagbhag diye gaye order mein.
  5. Revise karo — Revision page pe cheat sheets aur flashcards se.

Visualiser shortcuts: visualiser pe click karo, phir Space play/pause, ← → step, Home / End jump. Kahin bhi / dabao toh search khulega.

Credits and license

All chapters follow Competitive Programmer’s Handbook byAntti Laaksonen (the 2018 draft), which is licensed underCC BY-NC-SA 4.0. The explanations here are rewritten and expanded in English and Hinglish, and the C++ code is translated to Java. This site’s content is shared under the same license (attribution, non-commercial, share-alike). The site’s source code is MIT-licensed.

Practice problems link to the CSES Problem Set, the book’s companion collection. This is a personal, non-commercial study project and is not affiliated with the author or CSES.

Accounts and privacy

Signing in is optional. Without an account, everything you do (sections done, quiz scores, notes, CSES solutions) is saved only in this browser. If you sign in with GitHub, the same data is also stored on this site’s server (a Cloudflare Worker with a D1 database) so it can follow you to other devices.

Java conventions

Every Java snippet comes from a real file that compiles with javac --release 11 (safe on online judges) and runs self-tests against brute force before the site is built. Sums use long, Fenwick trees are 1-indexed like the book, and other structures are 0-indexed unless the text says otherwise.