回复 26# 的帖子
呵呵,我只是写了让楼主容易理解而已,在说,这样的程序,实际上没有什么用处,还不是考考你的程序思路而已,数值大小,我想应该不是这道题的关键问题吧
2008-11-18 16:48
2008-11-18 17:16
2008-11-18 18:00
2008-11-18 18:46
2008-11-18 19:05
2008-11-18 19:24
2008-11-18 19:59
程序代码:
//s(n)=a+aa+aaa+aaaa....
#include <stdio.h>
#include <stdlib.h>
short va[10000] = {0}, vb[10000] = {0}, blast = 1;
int main(void)
{
int i, n, a[4];
scanf("%d%d", &n, a);
for (i = 1; i < 4; i++)
a[i] = a[i-1] * 10 + a[0];
for (i = 0; i < n; i++)
{
int tmp = i / 4, j;
va[tmp] = a[i%4];
if (blast < tmp) blast = tmp;
for (j = tmp = 0; j <= blast; j++)
{
tmp += va[j] + vb[j];
vb[j] = tmp % 10000;
tmp /= 10000;
if (j == blast && tmp != 0)
blast++;
}
}
printf("%hd", vb[blast]);
while (blast) printf("%04hd", vb[--blast]);
putchar('\n');
return 0;
}
2008-11-18 20:05
2008-11-18 20:45
2008-11-18 21:14