Remove Consecutive Duplicate Letters
Implement a function that removes consecutive duplicate letters from a string, keeping only one occurrence of each run.
Sort characters alphabetically
Sort all characters in a string alphabetically and return the sorted string.
Replace Spaces with Dashes
Write a function that replaces every space in a string with a dash.
Camel Case Converter
Write a function that converts a space-separated phrase into lower camelCase.
Replace template variables
Implement a function that replaces {{variable}} placeholders in a string using a dictionary, leaving unknown placeholders intact.
Decode base64 string
Write a function that decodes a base64 string to its original UTF-8 text without using the base64 module.
Pad array edges
Implement a function that pads a list on both ends with a given value to a specified total length.
Multiply without multiply
Write a function that multiplies two integers using only addition, subtraction, and bit shifts — no * operator.
Count Set Bits
Implement a function that returns the number of set bits (1s) in the binary representation of a non-negative integer.
Single Number XOR
Given a non-empty list of integers where every element appears twice except one, return the single number using XOR.
Gray Code Decode
Implement gray_decode(n) that converts an n-bit Gray code integer back to its standard binary value using XOR accumulation.
Find Rightmost Set Bit
Implement a function that returns the 1-indexed position of the rightmost set bit of a positive integer, or 0 if none.
Isolate Rightmost Set Bit
Given an integer, return a number with only its rightmost set bit set.
Rotate Bits Left
Implement a function that rotates the bits of an integer to the left by a specified number of positions.
Set kth Bit
Implement a function that sets the kth bit (0-indexed) of a non-negative integer to 1 and returns the result.
Compress Bits Run
Write a function that compresses a binary string by representing consecutive identical bits as a count-bit pair.
Brian Kernighan count
Implement a function that counts set bits using Brian Kernighan's efficient algorithm.
Reverse Bits
Implement a function that reverses the bits of a given 32-bit unsigned integer.
Swap Odd and Even Bits
Write a function that swaps odd and even bits of a non-negative integer.
Clear Rightmost Set Bit
Write a function clear_rightmost_set_bit that accepts a non-negative integer and returns the integer with its rightmost set bit cleared.
Find Duplicate Bits
Given a positive integer, return the positions where the bit value appears more than once in its binary form.
Toggle kth Bit
Implement a function that toggles the kth bit of a non-negative integer (0-indexed from the least significant bit) and returns the new integer.
Check kth bit
Implement a function that checks whether the k-th bit of a non-negative integer is set (1) or not (0).
Encode Base64 String
Write a function that encodes a UTF-8 string into a base64 string without using the base64 module.
Showing 1–24 of 24 challenges · easy
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.