Multiply without multiply
Write a function that multiplies two integers using only addition, subtraction, and bit shifts — no * operator.
Dot Product of Vectors
Implement a function that returns the dot product of two numeric vectors.
Modular Inverse
Implement a function that returns the modular inverse of a modulo m, or -1 if it does not exist.
Count Set Bits
Implement a function that returns the number of set bits (1s) in the binary representation of a non-negative integer.
Gray Code Encode
Implement a function that converts a non-negative integer to its Gray code representation using bitwise XOR and shift.
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.
Rotate Bits Left
Implement a function that rotates the bits of an integer to the left by a specified number of positions.
Add without plus
Implement a function that adds two integers using only bitwise operations, no arithmetic plus or minus.
Set kth Bit
Implement a function that sets the kth bit (0-indexed) of a non-negative integer to 1 and returns the result.
Clear kth Bit
Implement a function that clears the k-th bit of a non-negative integer (turns it to 0) using bitwise operations.
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.
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.
Parse bit field flags
Write a function that unpacks a bit field integer into a dict of named boolean flags.
Check kth bit
Implement a function that checks whether the k-th bit of a non-negative integer is set (1) or not (0).
Climbing Stairs
Implement a function that returns the number of distinct ways to climb n stairs using steps of 1 or 2.
Derangement count
Implement a function to count derangements of n items using the classic recurrence.
Binary Tree Inorder Traversal
Implement an inorder traversal function that returns node values in left-root-right order.
Preorder Traversal
Implement a function that returns the preorder traversal values of a binary tree.
Postorder Traversal
Implement a function that returns the postorder traversal of a binary tree as a list of node values.
Symmetric Tree Check
Write a function that checks whether a binary tree is symmetric (a mirror of itself).
Showing 217–240 of 286 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.