Commits

Shlomi Fish committed a00f874

Add the beginning of Euler #104 - it takes too long.

Comments (0)

Files changed (1)

project-euler/104/euler-104.pl

+#!/usr/bin/perl
+
+use strict;
+use warnings;
+
+use Math::GMP qw(:constant);
+
+my $this_fib = 1;
+my $prev_fib = 1;
+
+my $k = 2;
+
+sub is_pan
+{
+    my $s = shift;
+    return join("", sort { $a cmp $b } split//, $s) eq "123456789";
+}
+
+while (1)
+{
+    ($prev_fib, $this_fib) = ($this_fib, $prev_fib+$this_fib);
+    $k++;
+
+    if (is_pan(substr("$this_fib", 0, 9)) && is_pan(substr("$this_fib", -9)))
+    {
+        print "F_[$k] matches.";
+        exit(0);
+    }
+}
+
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.