Example #1
0
int main (int argc, char ** argv) {
	if (argc != 2) {
		fprintf (stderr, "usage: %s <N>\n", argv[0]);
		return 1;
	}

	int N = atoi (argv[1]);

	if (N < 3)
		return 1;

	bool * primes = eratosthenes_sieve (N);

	int max_sum = 0;
	int max_count = 0;

	for (int i = 2; i < N; i++) {
		if (!primes[i])
			continue;

		int count = 0;
		int sum = sum_primes (primes, &count, i, N);

		if (count > max_count) {
			max_sum = sum;
			max_count = count;
		}
	}

	printf ("%d\n", max_sum);

	free (primes);

	return 0;
}
Example #2
0
int main() {
    sum_primes(10);
    sum_primes(2e6);
    return 1;
}