Pagini recente » Cod sursa (job #1089317) | Cod sursa (job #1426115) | Cod sursa (job #2231789) | Cod sursa (job #731935) | Cod sursa (job #2606677)
import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws IOException {
File file = new File("ciur.in");
Scanner scanner = new Scanner(file);
int n = scanner.nextInt();
Eras_sieve eras_sieve = new Eras_sieve(n);
int k = 0;
for (int i = 2; i <= n; i++)
if (eras_sieve.isPrime(i)) k++;
FileWriter fileWriter = new FileWriter("ciur.out");
PrintWriter printWriter = new PrintWriter(fileWriter);
printWriter.print(k);
printWriter.close();
fileWriter.close();
}
}
class Eras_sieve {
public Eras_sieve(int nn) {
n = nn;
primes = new ArrayList<>(Collections.nCopies(n + 1, Boolean.TRUE));
generate();
}
boolean isPrime(int i) {
return primes.get(i);
}
private void generate() {
primes.set(0, false);
primes.set(1, false);
for (int i = 2; i <= n; i++) {
if (primes.get(i)) {
for (int j = 2 * i; j <= n; j += i)
primes.set(j, false);
}
}
}
private int n;
ArrayList<Boolean> primes;
};