题目
给定两个均不超过9的正整数a和n,要求编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和。
输入格式:
输入在一行中给出不超过9的正整数a和n。
输出格式:
在一行中按照“s = 对应的和”的格式输出。
输入样例:
2 3
输出样例:
s = 246
公式解析
将所有项分解为
a∗10n相加的形式:
a+aa+aaa++⋯+aa⋯a⟺
a∗100+(a∗101+a∗100)+(a∗102+a∗101+a∗100)+⋯+(a∗10n−1+a∗10n−2+⋯+a∗100)⟺
a∗100∗n+a∗101∗(n−1)+a∗102∗(n−2)+⋯+a∗10n−1∗1⟺
i=0∑n=a∗10i∗(n−i)
参考解答(AC代码)
#include<stdio.h>
#include<math.h>
int main(){
int a,n,sum=0;
scanf("%d %d",&a,&n);
for(int i=0;i<n;i++){
sum+=a*pow(10,i)*(n-i);
}
printf("s = %d",sum);
return 0;
}