Challenge Library
Coding Challenges
5,893 curated questions across every arena — browse by topic, then jump into a live 3-minute battle to put them to the test.
Filter by type
Filter by difficulty
Popular topics
1,344 challenges matching your filters
- Multiple ChoiceHard
[CI/CD] Canary Ship to production
qacicdcicdqa - Multiple ChoiceHard
[CI/CD] Rolling Ship to production
qacicdcicdqa - Multiple ChoiceHard
[CI/CD] Feature flags Ship to production
qacicdcicdqa - Multiple ChoiceHard
[CI/CD] Rollback Ship to production
qacicdcicdqa - Multiple ChoiceHard
Pass-by-value then move idiom
cppmove-semanticsparameter-passing - Multiple ChoiceHard
shared_ptr aliasing constructor
cppsmart-pointersshared_ptraliasing - Multiple ChoiceHard
enable_shared_from_this caveat
cppsmart-pointersenable_shared_from_this - Multiple ChoiceHard
const correctness of value params
cppconst-correctnessapi-design - Multiple ChoiceHard
Object slicing by value parameter
cppobject-slicingvirtualgotcha - Multiple ChoiceHard
final on class disables devirtualization?
cppvirtualfinaloptimization - Multiple ChoiceHard
SFINAE meaning
cpptemplatessfinae - Multiple ChoiceHard
Concepts vs SFINAE error quality
cppconceptstemplatesc++20 - Multiple ChoiceHard
Class template argument deduction
cpptemplatesctadc++17 - Multiple ChoiceHard
COW string status
cppstlstringcow - Multiple ChoiceHard
std::function type-erasure overhead
cppstd-functiontype-erasureperformance - Multiple ChoiceHard
variant visit return type & exhaustive
cppvariantvisitc++17 - Multiple ChoiceHard
string_view as function parameter
cppstring_viewlifetimeapi-design - Multiple ChoiceHard
Empty base optimization
cppsizeofempty-base-optimizationtemplates - Multiple ChoiceHard
Static initialization order fiasco
cppstatic-initodrinitialization - Multiple ChoiceHard
Construct on first use idiom
cppstatic-initsingletoninitialization - Multiple ChoiceHard
Virtual base construction order
cppvirtual-inheritancediamondconstruction - Multiple ChoiceHard
relaxed atomic does not synchronize
cppatomicsmemory-orderdata-race - Multiple ChoiceHard
acquire-release pairing
cppatomicsmemory-orderacquire-release - Multiple ChoiceHard
compare_exchange_weak vs strong
cppatomicscompare-exchangecas - Multiple ChoiceHard
Difference between constinit and constexpr variables
constinitconstexprc++20 - Multiple ChoiceHard
Defaulted spaceship operator semantics detail
three-way-comparisonc++20defaulted-operators - Multiple ChoiceHard
Strict aliasing and type punning legality
strict-aliasingbit_castub - Multiple ChoiceHard
Why compare_exchange_weak is preferred in loops
atomicscaslock-free - Multiple ChoiceHard
How jthread differs from std::thread
jthreadstop-tokenc++20 - Multiple ChoiceHard
Static initialization order fiasco across TUs
static-initodrglobals - Multiple ChoiceHard
lock-free stack ABA mitigation
lock-freeABACAS - Multiple ChoiceHard
shared_ptr lock-free progress hazard
shared_ptrlock-freehazard-pointers - Multiple ChoiceHard
constexpr dynamic allocation requirement
constexprallocationC++20 - Multiple ChoiceHard
typename dependent qualified name
two-phase-lookuptypenametemplates - Multiple ChoiceHard
if constexpr discarded branch syntax
if-constexprtemplatesC++17 - Multiple ChoiceHard
CRTP Mixin Purpose
crtpmixinstatic-polymorphism - Multiple ChoiceHard
Coroutine Frame Lifetime and Destruction
coroutineslifetimecpp20 - Multiple ChoiceHard
co_await Customization Point Lookup
coroutinesco_awaitcustomization - Multiple ChoiceHard
Executors and Schedulers Distinction
executorsschedulersp2300 - Multiple ChoiceHard
std::atomic_ref Requirements
atomic_refalignmentcpp20 - Multiple ChoiceHard
Lock-Free Stack ABA Hazard
lock-freeabacas - Multiple ChoiceHard
RCU Read-Side Guarantees
rcumemoryconcurrency - Multiple ChoiceHard
Devirtualization opportunities
devirtualizationoptimizationvirtual - Multiple ChoiceHard
noexcept and vector reallocation
noexceptvectorreallocation - Multiple ChoiceHard
Dangling reference from operator[]
dangling-referenceoperator[]UB - Multiple ChoiceHard
Writing CTAD deduction guides
CTADdeduction-guidetemplates - Multiple ChoiceHard
[Docker] FROM ... AS Separate build and runtime
qadockerdockerqa - Multiple ChoiceHard
[Docker] COPY --from Separate build and runtime
qadockerdockerqa - Multiple ChoiceHard
[Docker] FROM scratch Separate build and runtime
qadockerdockerqa - Multiple ChoiceHard
[Docker] Benefits Separate build and runtime
qadockerdockerqa - Multiple ChoiceHard
[Docker] Go compilation Separate build and runtime
qadockerdockerqa - Multiple ChoiceHard
[Docker] Bridge Container connectivity
qadockerdockerqa - Multiple ChoiceHard
[Docker] Host Container connectivity
qadockerdockerqa - Multiple ChoiceHard
[Docker] Overlay Container connectivity
qadockerdockerqa - Multiple ChoiceHard
[Docker] macvlan Container connectivity
qadockerdockerqa - Multiple ChoiceHard
[Docker] IPvlan Container connectivity
qadockerdockerqa - Multiple ChoiceHard
[Docker] Docker Hub Image storage and distribution
qadockerdockerqa - Multiple ChoiceHard
[Docker] ECR/GCR/ACR Image storage and distribution
qadockerdockerqa - Multiple ChoiceHard
[Docker] Tagging Image storage and distribution
qadockerdockerqa - Multiple ChoiceHard
[Docker] Manifest Image storage and distribution
qadockerdockerqa
Practice now, dominate the arena
Every challenge here is drawn from the live Code Royale pool. Review a question, then head to the arena to answer under pressure against a real opponent — 3-minute matches, Elo ranking, and badge tiers on the line.