File: project_euler_069.pl

package info (click to toggle)
libmath-prime-util-perl 0.60-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 2,380 kB
  • ctags: 2,261
  • sloc: perl: 22,565; ansic: 8,478; python: 24; makefile: 12
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";