Rust coding challenges

225 challenges you can solve in Rust, from first loops to graphs, dynamic programming and machine learning. Write your code in the browser, run the tests instantly and get an AI review.

Easy · 134 Medium · 67 Hard · 24

Skills you'll practise: CountingDigit extractionString splitting2D listsArithmeticFormulasListsLoopsConditionsDivisibilityFloating pointGradient descent
  • Python · C++ · C#
  • Automated tests
  • AI code review
  • Community solutions
226
Challenges
123
Solutions shared
9
Languages

All challenges

Search by topic, language, or difficulty.

225 challenges
Easy

Multiplication Grid

Build a full multiplication table.

You'll learn 2D listsRow and column indexes
BeginnerLearning-pathNested-loops
Easy

Remove Duplicates

Keep only the first occurrence of each value.

You'll learn Seen-value trackingOrder preservation
ArraysBeginnerSetsStudent-beginner
No solutions yet
Medium

Subtract Digits to Reach Zero

Use as few digit subtractions as possible to reach zero.

You'll learn Minimum steps DPGreedy choice
Dynamic-programmingNumbers
No solutions yet
Hard

Cut a Rectangle Into Squares

Find the fewest straight cuts needed to produce only squares.

You'll learn 2D dynamic programmingOptimization
Dynamic-programmingGeometry
No solutions yet
Medium

Factory Production Time

Find the earliest time parallel machines can finish a target number of items.

You'll learn Binary search on answerMonotonic checks
AlgorithmsBinary-search
No solutions yet
Easy

Armstrong Number

Check whether a number equals the sum of its digits raised to the digit count.

You'll learn Digit extractionPowers
BeginnerNumbersStudent-beginner
Easy

Password Rules Check

Check a password against simple strength rules.

You'll learn ValidationBoolean flags
BeginnerConditionsLearning-pathStrings
Medium

Readability Grade

Estimate the school grade needed to read a text.

You'll learn Text analysisFormulas
BeginnerStringsStudent-beginnermath
No solutions yet
Easy

Power of Two

Check whether a number is a power of two.

You'll learn Bit manipulationDivision
BeginnerNumbersStudent-beginner
No solutions yet
Easy

Least Common Multiple

Find the smallest positive number divisible by both values.

You'll learn GCD and LCMNumber theory
BeginnerNumbersStudent-beginner
No solutions yet
Medium

Tree Diameter

A tree is a connected undirected graph with no cycles.

You'll learn Double BFSAdjacency lists
GraphsTrees
No solutions yet
Easy

Simple Interest

Find the total amount after simple interest.

You'll learn PercentagesWord problems
BeginnerLearning-pathVariables
Hard

Minimum Elevator Rides

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

You'll learn Bitmask DPSubsets
Dynamic-programmingOptimization
No solutions yet
Easy

Collatz Sequence

Follow the halve-or-triple-and-add-one rule until reaching 1.

You'll learn While loopsStep counting
NumbersSimulation
No solutions yet
Medium

Right-Triangle Product

Find the largest side product of an integer right triangle with a given perimeter.

You'll learn Right trianglesSearch pruning
GeometryNumber-theory
No solutions yet
Easy

Cart Total With Discount

Total a shopping cart and apply a discount above a threshold.

You'll learn ListsDiscount rules
ArraysBeginnerFunctionsLearning-path
Easy

Palindrome Number

Check whether a number reads the same backwards.

You'll learn Digit reversalComparisons
BeginnerNumbersStudent-beginner
Easy

Dot Product of Two Vectors

Multiply two vectors element by element and add the results: the core operation of every neuron.

You'll learn VectorsDot product
Neural networksaimachine learning