Sum of digits
Return the sum of all decimal digits of a non-negative integer.
Sum numbers from 1 to n
Implement a function that computes the sum of all integers from 1 to n.
Sum from 1 to n
Write a function that returns the sum of all integers from 1 to n (inclusive).
Perimeter of triangle
Given three side lengths, return the perimeter (sum) of the triangle.
Variadic Sum Function
Implement a variadic function that sums an arbitrary number of numeric arguments.
Cumulative Sum Vectorized
Implement a function that returns the cumulative sum of a list of numbers.
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.
Two Sum
Return indices (i, j) with i < j such that nums[i] + nums[j] == target.
Maximum subarray (Kadane)
Find the contiguous subarray with the largest sum.
Product except self
Return an array where output[i] is the product of all elements except nums[i], without using division.
Partition Array
Implement a function that finds a contiguous partition of a list into k groups, minimizing the maximum sum of the groups.
Count Adjacent Pairs
Given a list of integers and a target, count adjacent pairs whose sum equals the target.
Running Total Window
Implement a function that returns a list of running totals, resetting to zero after each positive sum.
Subarray sum equals K
Count the number of contiguous subarrays whose sum equals k.
Merge dicts summing values
Write a function that merges two dictionaries by summing values for duplicated keys.
Missing keys default zero
Write a function to sum numeric values from dictionaries, treating missing keys as zero.
Two Sum with Dict
Implement the classic Two Sum problem: return indices of two numbers that add up to a target using a dict.
Count Pairs with Sum
Implement a function that counts the number of distinct pairs in a list summing to a target.
Path Sum II All Paths
Return all root-to-leaf paths where the sum of node values equals a target.
Count of Range Sum
Count contiguous subarrays whose sum lies in a given inclusive range using an efficient divide-and-conquer algorithm.
Sum of divisors
Given an integer n, return the sum of all its positive divisors.
Perfect Number Check
Write a function that returns True if a number is perfect, i.e., equal to the sum of its proper divisors.
Abundant Number Check
Implement a function to check whether a given integer is abundant: sum of proper divisors exceeds the number.
Amicable Numbers Check
Write a function that checks if two numbers are an amicable pair by comparing sums of proper divisors.
Showing 1–24 of 67 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.