1043: 数学王子

谁说胖子不能爱 提交于 2020-01-10 04:49:14

题目描述
数学王子高斯小时候就能利用规律很快的将1+2+……+100算出来。 
PIPI现在想知道1+2+……+10^n,你能像高斯一样快速求出结果吗? 

输入
第一行有一个整数t,表示有t组数据。以下一共t行,每行一个整数n (0<=n && n<=1000) 

输出
对于每个输入的n,输出对应的结果。 

样例输入
2
1
2

样例输出
55
5050

【思路】取比较小的n发现规律如下,直接按照规律得出结果,而非计算。

10
0
1
1
55
2
5050
3
500500
4
50005000
5
5000050000
6
500000500000
7
50000005000000
8
5000000050000000
9
500000000500000000

......

#include<stdio.h>
#include<math.h>
int main(void)
{
	int n,m;
	long long sum;
	scanf("%d",&n);
	for(int i=1;i<=n;i++){
		scanf("%d",&m);
		if(m==0){
			printf("%d\n",1);
			continue;
		}
		if(m==1){
			printf("%d\n",55);
			continue;
		}
		printf("%d",5);
		for(int j=1;j<m;j++){
			printf("%d",0);
		}
		printf("%d",5);
		for(int j=1;j<m-1;j++){
			printf("%d",0);
		}
		printf("%d\n",0);
	}
	return 0;
}

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!