File: project_euler_069.pl

package info (click to toggle)
libmath-prime-util-perl 0.73-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 2,796 kB
  • sloc: perl: 24,676; ansic: 11,471; makefile: 26; python: 24
file content (17 lines) | stat: -rw-r--r-- 398 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/usr/bin/env perl
use warnings;
use strict;
use Math::Prime::Util qw/euler_phi pn_primorial/;

# Better way
my $n = 0;
$n++ while pn_primorial($n+1) < 1000000;
print pn_primorial($n), "\n";

# Brute force
my ($maxn, $maxratio, $ratio) = (0, 0);
foreach my $n (1 .. 1000000) {
  $ratio = $n / euler_phi($n);
  ($maxn, $maxratio) = ($n, $ratio) if $ratio > $maxratio;
}
print "$maxn  $maxratio\n";