Programming Challenges

Strengthen your problem-solving skills with language-neutral challenges you can solve in Python, C++, or C#. Every submission is checked by automated tests and reviewed by AI.

  • Python · C++ · C#
  • Automated tests
  • AI code review
  • Community solutions
Learning path
150
Challenges
2
Solutions shared
3
Languages

All challenges

Search by topic, language, or difficulty.

150 challenges
Easy

Sum of Odd Numbers

Add every odd number up to a limit.

BeginnerLearning-pathLoops
No solutions yet
Medium

Two Nonattacking Knights

Count safe placements of two knights for each square board size.

Combinatoricsmath
No solutions yet
Hard

Minimum Elevator Rides

Group people into as few weight-limited elevator rides as possible.

Dynamic-programmingOptimization
No solutions yet
Medium

Readability Grade

Estimate the school grade needed to read a text.

BeginnerStringsStudent-beginnermath
No solutions yet
Hard

Count Numbers With Distinct Neighbors

Count range values whose adjacent decimal digits are never equal.

Dynamic-programmingNumbers
No solutions yet
Medium

Recursive Power

Compute a power recursively by halving the exponent.

BeginnerLearning-pathRecursion
No solutions yet
Medium

Subtract Digits to Reach Zero

Use as few digit subtractions as possible to reach zero.

Dynamic-programmingNumbers
No solutions yet
Medium

Empty Two Coin Piles

Decide whether paired removals can empty two piles.

Greedymath
No solutions yet
Medium

Number Spiral Lookup

Find a value by row and column in an expanding number spiral.

Patternsmath
No solutions yet
Easy

Flatten a 2D Array

Combine the rows of a 2D integer array into one array.

ArraysLoops
No solutions yet
Easy

Sum Even Fibonacci Terms

Add the even Fibonacci terms that do not exceed a limit.

NumbersSequences
No solutions yet
Easy

Make an Array Nondecreasing

Find the fewest increments needed so each value is at least the previous one.

ArraysGreedy
No solutions yet
Easy

Character Frequency

Count how often each character appears.

BeginnerDictionariesStringsStudent-beginner
No solutions yet
Easy

Hamming Distance

Compare two DNA strings position by position and count the differences.

SequencesStrings
No solutions yet
Easy

Array Average

Compute the average of a list of numbers.

ArraysBeginnerStudent-beginner
No solutions yet
Hard

Find Many Patterns in Text

For each requested pattern, decide whether it appears as a contiguous substring anywhere in the shared text.

Pattern-matchingStringsTries
No solutions yet
Easy

Pascal’s Triangle

Build rows by adding neighboring entries from the previous row.

ArraysCombinatorics
No solutions yet
Medium

Sum of Primes Below a Limit

Add all primes strictly below a limit.

Number-theorySieve
No solutions yet