Back to Practice Dashboard
Python BasicsEasy
Permutations in which n people can occupy r seats
Learn how to solve the 'Permutations in which n people can occupy r seats' problem. This detailed resource details brute force and optimized approaches.
Problem Statement
Easy
Write a function compute_nPr(n, r) that takes two non-negative integers n and r (where n >= r) and returns the number of permutations, i.e., the number of ways to arrange r items out of n items. The formula is nPr = n! / (n - r)!.
For example, if 5 people want to sit in 3 seats, the number of ways is 5P3 = 5! / 2! = 120 / 2 = 60.
Constraints
- •0 <= r <= n <= 20
Examples
Example 1
Input
compute_nPr(5, 3)
Output
60
Explanation
5P3 = 5! / (5-3)! = 120 / 2 = 60.
Example 2
Input
compute_nPr(4, 2)
Output
12
Explanation
4P2 = 4! / 2! = 24 / 2 = 12.
Example 3
Input
compute_nPr(6, 6)
Output
720
Explanation
6P6 = 6! / 0! = 720 / 1 = 720.
Need a Hint?
Use simple arithmetic operators (like modulo `%`, division `//`), conditional checks, or loops to inspect number properties.
Edge Cases to Watch
- Empty list or null input variables
- Single item lists/arrays
- Extremely large input bounds causing integer or stack overflow
Ready to Solve?
Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.