### Re: Recurring Cycle of Fractions

by Limbic~Region (Chancellor)
 on Sep 09, 2007 at 20:56 UTC ( #637934=note: print w/replies, xml ) Need Help??

in reply to Recurring Cycle of Fractions

Al,
As promised, here is my inefficient code as written specifically for the Euler problem.
#!/usr/bin/perl use strict; use warnings; use Math::BigFloat; my (\$max, \$suspect) = (0,0); N: for (2..999) { my \$n = Math::BigFloat->new(1); \$n->bdiv(\$_, 4000); my (\$str) = \$n->bstr() =~ /(\d+)\1/; my (\$best, \$orig) = ('', \$str); while (1) { my (\$long_match) = \$str =~ /(\d+)\1/; last if ! defined \$long_match; next N if \$long_match =~ /^(\d)\1+\$/; # ensure we don't reduce too far my \$len = length(\$long_match); my \$mult = int(length(\$orig) / \$len); last if substr(\$orig, 0, \$len * \$mult) !~ /^(\$long_match)+\$/; \$str = \$best = \$long_match; } my \$len = length(\$best); (\$max, \$suspect) = (\$len, \$_) if \$len > \$max; } print "\$max\t\$suspect\n";

Cheers - L~R

Create A New User
Node Status?
node history
Node Type: note [id://637934]
help
Chatterbox?
and a kettle whistles...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (3)
As of 2017-11-21 07:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?
In order to be able to say "I know Perl", you must have:

Results (296 votes). Check out past polls.

Notices?