Collatz steps
Count how many steps the Collatz sequence takes to reach 1 from n.
Replace multiple spaces
Implement a function that replaces every sequence of spaces with a single space.
Parse range notation
Parse a comma-separated list of ranges and individual numbers, expanding each range into its full sequence.
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.
Longest Harmonious Subsequence
Given a list of integers, find the length of the longest harmonious subsequence where the difference between maximum and minimum values is exactly 1.
Longest increasing subsequence
Return the length of the longest strictly increasing subsequence.
Longest Consecutive Sequence
Given an unsorted list of integers, find the length of the longest consecutive elements sequence in O(n) time.
Shell Sort
Implement Shell sort, an in-place comparison sort that generalizes insertion sort, using a gap sequence that shrinks by half each pass.
Arithmetic Slices Count
Given a list of integers, count how many contiguous subarrays of length at least 3 form an arithmetic sequence.
Window Iterator
Implement a generator that yields consecutive windows of a given size from any iterable.
Pairwise Sequence Pairs
Write a generator function pairwise that yields each consecutive overlapping pair from any iterable as lists.
Collatz Generator
Implement a generator function that yields the Collatz sequence starting from a given positive integer.
Power set size
Compute the size of the power set of a given sequence.
Lucas Sequence
Implement a function to compute the n-th Lucas number using iteration or recursion with memoization.
Longest Common Subsequence
Given two strings, compute the length of the longest subsequence common to both.
Longest Palindromic Subsequence
Compute the length of the longest palindromic subsequence in a given string.
Longest Arithmetic Subsequence
Given a list of integers, return the length of the longest arithmetic subsequence (constant difference) within it.
Shortest Common Supersequence
Given two strings, return any shortest supersequence that contains both as subsequences.
Binary Search Tree Class
Build a BinarySearchTree class and a sequence runner that executes a list of operations.
Course Schedule Ordering
Determine a valid sequence to complete all courses respecting prerequisite constraints.
Letter Tile Possibilities
Given a string of letter tiles, count the number of distinct non-empty sequences that can be formed using any non-empty subset in any order.
Minimum Window Subsequence
Given strings s and t, return the minimum window substring of s that contains t as a subsequence, or empty string if none exists.
Validate Stack Sequences
Given two sequences of distinct integers, verify whether the second sequence is a valid pop order for a stack given the first sequence as push order.
Showing 1–23 of 23 challenges
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
- Pick a category — basics, algorithms, strings, and more
- Open a challenge, read the statement, and edit the starter code
- 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.