题目1051:数字阶梯求和
时间限制:
1 秒
内存限制:
32 兆
特殊判题:
否
提交:
4111
解决:
1350
题目描述:
给定a和n,计算a+aa+aaa+a...a(n个a)的和。
输入:
测试数据有多组,输入a,n(1<=a<=9,1<=n<=100)。
输出:
对于每组输入,请输出结果。
样例输入:
1 10
样例输出:
1234567900
来源:
2010年哈尔滨工业大学计算机研究生机试真题
//
//
#include<iostream>
using std::cin;
using std::cout;
using std::endl;
#include<new>
int main()
{
int a,n;
int inc,s;
while(cin >> a)
{
inc = 0;
cin >> n;
int *ptr = new int[n+1];
//求和过程
for(int i = 0, j = n; i < n; i++)
{
s = a*j + inc;
j--;
ptr[i] = s%10;
inc = s/10;
}
if(inc)
ptr[n] = 1;
if(ptr[n] == 1)
cout << ptr[n];
for(int k = n-1; k >= 0; k--)
cout << ptr[k];
cout << endl;
delete[] ptr;
}
return 0;
}
/**************************************************************
Problem: 1051
User: true14fans
Language: C++
Result: Accepted
Time:0 ms
Memory:1520 kb
****************************************************************/