码迷,mamicode.com
首页 > 其他好文 > 详细

因子和阶乘

时间:2015-07-25 12:29:21      阅读:119      评论:0      收藏:0      [点我收藏+]

标签:

因子和阶乘

时间限制:1000 ms  |  内存限制:65535 KB
难度:2
描述
给你一个正整数n,把n!=1x2x3x.....xn分解成素因子相乘的形式,并从小到大输出每个素因子的指数,但要保证最后输出的素因子个数不为0。例如825应表示为0,1,2,0,1表示分别有0,1,2,0,1个2,3,5,7,11。
输入
第一行有一个整数n(0<n<10000),表示有n组测试数据;
接下来n行每行有一个整数 m(1<m<10000)
输出
从小到大输出m分解成素因子相乘后各个素因子对应的指数
样例输入
2
5
53
样例输出
3 1 1
49 23 12 8 4 4 3 2 2 1 1 1 1 1 1 1 

代码:
#include<stdio.h>
int num[10005]={0,0};
int main(void)
{
	int T,n,i,j,k;
	scanf("%d",&T);
	while(T--)
	{
		scanf("%d",&n);
		for(i=2;i<=n;i++)
		   num[i]=1;
		for(i=2;i<=n;i++)
		{
			if(num[i]==1)
			{
				for(j=2*i;j<=n;j=j+i)
				{
					k=j;
					while(k&&k%i==0)
					{
						num[i]++;
						k=k/i;
					}
					num[j]=0;
				}
			}
		}
		for(i=2;i<=n;i++)
		{
			if(num[i]!=0)
			{
				printf("%d ",num[i]);
			}
		}
		printf("\n");	
	}
	return 0;	
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

因子和阶乘

标签:

原文地址:http://blog.csdn.net/qq_16997551/article/details/47054159

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!