前n个质数的乘积
問題描述
?
Torry從小喜愛數學。一天,老師告訴他,像2、3、5、7……這樣的數叫做質數。Torry突然想到一個問題,前10、100、1000、10000……個質數的乘積是多少呢?他把這個問題告訴老師。老師愣住了,一時回答不出來。于是Torry求助于會編程的你,請你算出
import java.util.Scanner;public class ALGO51 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();int count =0;int c =0;long num =1;while(count<n){c++;if(PanDuan(c)!=1){num*=PanDuan(c); count++;}}System.out.println(num%50000); }public static long PanDuan(int d){int c = 1;for(int i=1;i*i<=d;i++){if(d%i==0&&i!=1){return c;}}return d;} }。不過,考慮到你才接觸編程不久,Torry只要你算出這個數模上50000的值。
?
輸入格式
?
僅包含一個正整數n,其中n<=100000。
?
輸出格式
?
輸出一行,即前n個質數的乘積模50000的值。
?
樣例輸入
1
?
樣例輸出
2
總結
- 上一篇: OPPO笔试题
- 下一篇: 百度推出清风算法,SEO的标题该如何优化