Practice Arena

Python Coding Challenges

Write real Python in the browser. Instant feedback. From beginner to expert.

925 challenges 556 easy 323 medium 46 hard
Strings & Text medium

Additive number sequence

Check whether a given digit string can be partitioned into a valid additive sequence where each term is the sum of the previous two.

strings parsing fibonacci
+30 pts 25m
Lists & Arrays medium

Partition around a pivot value

Implement an in-place partition of a list around a given pivot value, returning the boundary index.

lists partition two-pointer
+20 pts 20m
Lists & Arrays medium

Partition Array

Implement a function that finds a contiguous partition of a list into k groups, minimizing the maximum sum of the groups.

arrays partition contiguous
+25 pts 25m
Data Structures & Algorithms medium

Matchsticks to Square

Given a list of matchstick lengths, decide if they can form a square by using each matchstick exactly once.

backtracking dfs partition
+30 pts 30m
Dynamic Programming medium

Bell number

Implement a function to compute the Bell number B(n) using dynamic programming.

dp combinatorics math
+25 pts 25m
Dynamic Programming medium

Partition Equal Subset

Determine whether a given list of positive integers can be partitioned into two subsets with equal sum.

dynamic-programming subset-sum memoization
+30 pts 25m
Graphs & Graph Algorithms medium

Possible bipartition

Given N people and a list of mutual dislikes, check if they can be divided into two groups with no dislike inside a group.

bipartite graph bfs
+25 pts 25m
Recursion & Backtracking medium

Palindrome Partitioning

Given a string s, return all possible palindrome partitioning of s.

backtracking recursion palindrome
+25 pts 30m
Recursion & Backtracking medium

Partition Equal Subset Sum (Backtracking)

Write a function that uses backtracking to decide if a list of positive integers can be partitioned into two subsets with equal sum.

backtracking subset-sum partition
+25 pts 25m
Greedy Algorithms medium

Partition Labels

Partition a string into maximal parts where each character appears in only one part, returning part lengths.

greedy string hashmap
+20 pts 20m
Greedy Algorithms medium

Painter Partition Problem

Given board lengths and k painters, find the minimum possible maximum total length a painter must paint.

binary-search greedy array-partitioning
+20 pts 25m

Showing 1–11 of 11 challenges · medium

Guide: free Python coding challenges

Practice Python by solving problems

PythonSkillset challenges are hands-on coding exercises from beginner to advanced. Open a challenge, read the problem, write Python in the split-pane editor, and run tests with Pyodide — no install required.

How to use the arena

  1. Pick a category — basics, algorithms, strings, and more
  2. Open a challenge, read the statement, and edit the starter code
  3. Run tests, fix failures, then try a related quiz or tutorial lesson

Challenges vs tutorials and quizzes

Challenges test what you can build under constraints. For guided teaching, use our Python tutorials. For quick checks, try quizzes or copy snippets from code samples.