Commits

Shlomi Fish committed cbaaadb

Fix a bug in the analysis thanks to int-e on Freenode.

The program now works but it is too slow to be effective.

Comments (0)

Files changed (2)

project-euler/137/euler-137.pl

+#!/usr/bin/perl
+
+use strict;
+use warnings;
+
+use integer;
+
+use IO::All;
+
+# use Math::BigInt lib => 'GMP';
+
+sub is_square
+{
+    my $n = shift;
+
+    # my $root = int($n->copy->bsqrt());
+    my $root = int(sqrt($n));
+
+    return ($root * $root == $n);
+}
+
+my $e = (1+1)**2 + 4*1**2;
+
+my $count = 0;
+foreach my $n (1 .. 4e9)
+{
+    if (is_square($e))
+    {
+        $count++;
+        print "${count}-th Golden nugget is $n\n";
+    }
+
+    $e += 10*$n+7
+}

project-euler/137/html-analysis.html

 
     \left[y = x/2\right] \\
 
-ys \cdot \left\{ \dfrac{ 1 }{ \frac{1}{1+s} - y } - \dfrac{ 1 }{ \frac{1}{1-s} - y } \right\} = \\
+\frac{y}{s} \cdot \left\{ \dfrac{ 1 }{ \frac{1}{1+s} - y } - \dfrac{ 1 }{ \frac{1}{1-s} - y } \right\} = \\
 
     \left[z = 1/y ; \cdot \dfrac{\frac{1}{y}}{\frac{1}{y}} \right] \\
 
-s \cdot \left\{ \dfrac{1}{\frac{z}{1+s} - 1} - \dfrac{1}{\frac{z}{1-s} - 1} \right\} = N \\
+\frac{1}{s} \cdot \left\{ \dfrac{1}{\frac{z}{1+s} - 1} - \dfrac{1}{\frac{z}{1-s} - 1} \right\} = N \\
 
-s \cdot \dfrac{ \left[\frac{z}{1-s}-1 - \frac{z}{1+s} + 1 \right]}{[\frac{z}{1+s}-1][\frac{z}{1-s}-1]} = N \\
+\frac{1}{s} \cdot \dfrac{ \left[\frac{z}{1-s}-1 - \frac{z}{1+s} + 1 \right]}{[\frac{z}{1+s}-1][\frac{z}{1-s}-1]} = N \\
 
-sz \cdot (\frac{1}{1-s}-\frac{1}{1+s}) = N\left[\frac{z}{1+s}-1\right]\left[\frac{z}{1-s}-1\right] \\
+\frac{z}{s} \cdot (\frac{1}{1-s}-\frac{1}{1+s}) = N\left[\frac{z}{1+s}-1\right]\left[\frac{z}{1-s}-1\right] \\
 
     \text{[ * (1+s) * (1-s)]} \\
 
-    sz(1+s-1+s) = N\left[z-(1+s)\right]\left[z-(1-s)\right] \\
+    \frac{z}{s}(1+s-1+s) = N\left[z-(1+s)\right]\left[z-(1-s)\right] \\
 
-    2 s^2 \cdot z = N \left[ z^2 - 2z + (1-s^2)\right] \\
+    2z = N \left[ z^2 - 2z + (1-s^2)\right] \\
 
     s^2 = 5 \\
 
-    10z = N \left[ z^2 - 2z - 4 \right] \\
+    2z = N \left[ z^2 - 2z - 4 \right] \\
 
-    z^2 - (2+10/N)z - 4 = 0 \\
+    z^2 - (2+2/N)z - 4 = 0 \\
 
     z = \dfrac{ -b \pm \sqrt{b^2-4ac}}{2a} \\
 
     \text{z is rational iff b^2-4ac is a square of a rational number:} \\
 
-    ∆ = (2+10/N)^2+16 = 4\left[ (1+5/N)^2+4 \right] = 4[ (N+5)^2/N^2 + 4 ] \\
+    ∆ = (2+2/N)^2+16 = 4\left[ (1+1/N)^2+4 \right] = 4[ (N+1)^2/N^2 + 4 ] \\
 
-    ∆ = 4\dfrac{ (N+5)^2+4N^2 }{ N^2 } \\
+    ∆ = 4\dfrac{ (N+1)^2+4N^2 }{ N^2 } \\
 
-    \text{rational iff (N+5)^2+4N^2 is a whole square.}
+    \text{rational iff (N+1)^2+4N^2 is a whole square.}
 
 \]
 </p>
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.