Python 计算特殊数列之和

给定两个均不超过9的正整数,较小的数作为'a',较大的数作为'n',要求编写程序求 'a' + 'aa' + 'aaa' +... + 'aaa...aa'(n个'a')之和。

例如:'a' = 2, 'n' = 5 时,2 + 22 + 222 + 2222 + 22222 = 24690,输出结果 24690

格式

输入格式 同行输入两个正整数 'a','n' 表示两个整数,题目保证:'a' 不大于 9,'n' 不大于 10

输出格式 输出一个正整数 'm',表示特殊数列之和。

样例

输入样例 2 5

输出样例 24690

解题思路

题目要求求和的是一个特殊数列,该数列每一项都是由前一项加上一个'a'组成的,而第一项是'a'。

因此可以用一个变量 'sum' 来表示数列的和,另一个变量 'term' 来表示数列中的每一项,初始值都为 'a'。

接着用一个循环,从第二项开始(即第一项已经在 'term' 中了),依次计算每一项,同时将其加入 'sum' 中。

计算每一项时,可以用一个变量 'temp' 来表示当前项,初始值为 0,然后从 1 到当前项的位数,依次将 'a' 加入 'temp' 中,最后将 'temp' 加入 'term' 中。

最后输出 'sum' 即可。

Python 代码

a, n = map(int, input().split())
sum = a
term = a
for i in range(2, n + 1):
    temp = 0
    for j in range(1, i + 1):
        temp = temp * 10 + a
    term = temp
    sum += term
print(sum)
Python 计算特殊数列之和

原文地址: https://www.cveoy.top/t/topic/jFzX 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录