Python BasicsEasy

Armstrong number in a given range

Detailed guide and Python implementation for the 'Armstrong number in a given range' problem.

Problem Statement

Easy

Write a function armstrongs_in_range(a, b) that takes two integers a and b (where a <= b) and returns a list of all Armstrong numbers in the range [a, b] inclusive, in ascending order. An Armstrong number is a number that equals the sum of its digits each raised to the power of the number of digits.

Constraints
  • 1 <= a <= b <= 10^5

Examples

Example 1
Input
a = 100, b = 500
Output
[153, 370, 371, 407]
Explanation

The Armstrong numbers between 100 and 500 are 153, 370, 371, and 407.

Example 2
Input
a = 1, b = 9
Output
[1, 2, 3, 4, 5, 6, 7, 8, 9]
Explanation

All single-digit numbers are Armstrong numbers since d^1 = d.

Example 3
Input
a = 200, b = 300
Output
[]
Explanation

There are no Armstrong numbers between 200 and 300.

Need a Hint?
Consider using Basics-specific data structures like sets or heaps.
Edge Cases to Watch
  • Empty input structures
  • Single element inputs
  • Large numerical bounds

Ready to Solve?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Open in Editor

Recommended Python Resources

Expand your knowledge with related interactive tutorials, cheat sheets, and code comparisons.