アルゴリズムトレーニングTorryの戸惑い(基本型)
時間制限:1.0 sメモリ制限:512.0 MB
問題の説明
トリーは小さい頃から数学が好きだった.ある日、先生は彼に2、3、5、7......のような数を質数と呼ぶと言った.Torryはふと一つの質問を思いついた.上位10、100、1000、10000......個の質量数の積はいくらだったのだろうか.彼はこの問題を先生に話した.先生は呆然としていて,すぐには答えられなかった.そこでTorryはプログラミングができるあなたに助けを求めて、前のn個の素数の積を計算してください.しかし、プログラミングに触れて間もないことを考慮すると、Torryはこのデジタルモードの50000の値を算出します.
入力フォーマット
n<=10000000の正の整数nのみが含まれます.
出力フォーマット
1行、すなわち、前のn個の質量数の積モード50000の値を出力する.
サンプル入力
サンプル出力
2つの方法、2つ目は1つ目より周到ですが、ブルーブリッジカップシステムで1つ目の方法を提出するのに十分です.
方法1:
注:コード編集はシステムテストしたままコピーしてきたので、気に入ってください.
問題の説明
トリーは小さい頃から数学が好きだった.ある日、先生は彼に2、3、5、7......のような数を質数と呼ぶと言った.Torryはふと一つの質問を思いついた.上位10、100、1000、10000......個の質量数の積はいくらだったのだろうか.彼はこの問題を先生に話した.先生は呆然としていて,すぐには答えられなかった.そこでTorryはプログラミングができるあなたに助けを求めて、前のn個の素数の積を計算してください.しかし、プログラミングに触れて間もないことを考慮すると、Torryはこのデジタルモードの50000の値を算出します.
入力フォーマット
n<=10000000の正の整数nのみが含まれます.
出力フォーマット
1行、すなわち、前のn個の質量数の積モード50000の値を出力する.
サンプル入力
1
サンプル出力
2
2つの方法、2つ目は1つ目より周到ですが、ブルーブリッジカップシステムで1つ目の方法を提出するのに十分です.
方法1:
import java.util.Scanner;
public class Main {
// ( )
static int is_prime(long n){
for(inti=2;i*i<=n;i++){
if(n%i==0)
return0;
}
return 1;
}
public static voidmain(String[] args) {
long n;
Scanner sc=new Scanner(System.in);
n=sc.nextLong();
int sum=0,ans=1,i=2;
while(sum
if(is_prime(i)==1)
{
ans=ans*iP000;
sum++;
}
i++;
}
System.out.println(ans);
}
}
:
importjava.util.Scanner;
publicclassMain{
//
publicstaticbooleanIsprime(longn){
booleanf =true;
if( n <=1){
f =false;
}elseif( n ==2){
f =true;
}else{
for( int i =2;i < n ; i++){
if( n % i ==0){
f =false;break;
} }}
returnf;
}
publicstaticvoidmain(String[]args) {
// TODO Auto-generated method stub
Scannersc=newScanner(System.in);
longN =(long)sc.nextInt();
longcnt =0;
longi =2;
longresult =1;
while(cnt
注:コード編集はシステムテストしたままコピーしてきたので、気に入ってください.