Data update

This commit is contained in:
Ingy döt Net 2023-12-16 21:33:55 -08:00
parent 35bcdeebf8
commit 74c69a0df6
2427 changed files with 31826 additions and 3468 deletions

View file

@ -0,0 +1,39 @@
import java.util.BitSet;
public final class TwinPrimes {
public static void main(String[] args) {
final int limit = 1_000_000_000;
sievePrimes(limit);
int target = 10;
int count = 0;
boolean last = false;
boolean first = true;
for ( int index = 5; index <= limit; index += 2 ) {
last = first;
first = primes.get(index);
if ( last && first ) {
count += 1;
}
if ( index + 1 == target ) {
System.out.println(String.format("%8d%s%d", count, " twin primes below ", index + 1));
target *= 10;
}
}
}
private static void sievePrimes(int aLimit) {
primes = new BitSet(aLimit + 1);
primes.set(2, aLimit + 1);
for ( int i = 2; i <= Math.sqrt(aLimit); i = primes.nextSetBit(i + 1) ) {
for ( int j = i * i; j <= aLimit; j += i ) {
primes.clear(j);
}
}
}
private static BitSet primes;
}