ny225 小明求素数积

小明求素数积
时间限制:1000 ms  |  内存限制:65535 KB
难度:1
描述
小明最近遇到了一个素数题,是给你一个正整数N(2=<N<=1000)让你求出2~N的所有素数乘积的后六位。

输入
第一行输入一个正整数T(T<=20)表示有T组数据
每组数据占一行,输入一个正整数N(2=<N<=1000)
输出
每组数据输出占一行,输出2~N素数乘积的后六位
样例输入
3
3
6
43样例输出
6
30
670030

 1 #include<stdio.h>
 2 #include<math.h>
 3 int main()
 4 {
 5 long long n,i,j,x,y,f,q;
 6 scanf("%lld",&n);
 7 while(n--)
 8 {
 9 y=1;
10 scanf("%lld",&x);
11 for(i=2;i<=x;i++)
12 {
13 f=1;
14 q=(int)sqrt((float)i);
15 for(j=2;j<=q;j++)
16 if(i%j==0)
17 f=0;
18 if(f==1)
19 y*=i;
20 y=y%1000000;
21 }
22 
23 printf("%lld
",y);
24 }
25 return 0;
26 }
原文地址:https://www.cnblogs.com/lovychen/p/3183576.html