私は挑戦を解決しようとしていますが、私はロードブロッキングを打ちました。私は数万の数字を追加しようとする初心者のプログラマーです。私が長い間待っていれば、私のプログラムは簡単に正しい合計を得ることができますが、私はより効率的な方法を探しています。何千もの数字をすばやく追加する効率的な方法は何ですか?
何千もの数字をすばやく追加する効率的な方法は何ですか。
サイドノート:私はモジュラー算術について読んできましたが、私はそれを周りの頭で包み込むことはできません。それがこの状況に役立つかどうかは不明です。私はここ2 000 000以下の全ての素数の合計を取得しようとしています
は、これまでの私のコードです:
public class Problem10 {
public static void main (String[] args) {
long sum = 0L;
for(long i = 1L; i < 2000000; i++) {
if(isPrimeNumber((int)i)) {
sum += i;
}
}
System.out.println(sum);
}
public static boolean isPrimeNumber(int i) {
int factors = 0;
int j = 1;
while (j <= i) {
if (i % j == 0) {
factors++;
}
j++;
}
return (factors == 2);
}
}
例を挙げておけば、どこが間違っているのかが分かるかもしれません。現時点であなたの質問は広すぎます。 – Gendarme
私は並行性を検討することをお勧めします。 – Logan
番号はどこから来ていますか?彼らはランダムですか?シリーズ?ファイルから読み込みますか? – Bohemian