prog.pl 550 B

123456789101112131415161718192021222324252627282930313233
  1. #!/usr/bin/perl
  2. # Squarefree numbers whose product of prime indices is twice their sum of prime indices.
  3. # https://oeis.org/A326157
  4. # Known terms:
  5. # 65, 154, 190
  6. use 5.014;
  7. use ntheory qw(:all);
  8. my @lookup; # prime count lookup table
  9. do {
  10. my $count = 1;
  11. forprimes {
  12. $lookup[$_] = $count;
  13. ++$count;
  14. } 1e7;
  15. };
  16. forsquarefree {
  17. if (!is_prime($_)) {
  18. my @pi = map { $lookup[$_] // prime_count($_) } factor($_);
  19. if (vecprod(@pi) == 2 * vecsum(@pi)) {
  20. say $_;
  21. }
  22. }
  23. } 1e7;