Python Basics簡単

Armstrong number in a given range

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

問題提起

簡単

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.

制約
  • 1 <= a <= b <= 10^5

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

解決する準備はできましたか?

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

エディタで開く
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

推奨される Python リソース

関連するインタラクティブなチュートリアル、チートシート、コード比較で知識を深めてください。