[#33161] Call/CC and Ruby iterators. — olczyk@... (Thaddeus L Olczyk)

Reading about call/cc in Scheme I get the impression that it is very

11 messages 2002/02/05

[#33242] favicon.ico — Dave Thomas <Dave@...>

19 messages 2002/02/06
[#33256] Re: favicon.ico — Leon Torres <leon@...> 2002/02/06

[#33435] Reg: tiny contest: who's faster? (add_a_gram) — grady@... (Steven Grady)

> My current solution works correctly with various inputs.

17 messages 2002/02/08

[#33500] Ruby Embedded Documentation — William Djaja Tjokroaminata <billtj@...>

Hi,

24 messages 2002/02/10
[#33502] Re: Ruby Embedded Documentation — "Lyle Johnson" <ljohnson@...> 2002/02/10

> Now, I am using Ruby on Linux, and I have downloaded Ruby version

[#33615] Name resolution in Ruby — stern@... (Alan Stern)

I've been struggling to understand how name resolution is supposed to

16 messages 2002/02/11

[#33617] choice of HTML templating system — Paul Brannan <paul@...>

I am not a web developer, nor do I pretend to be one.

23 messages 2002/02/11

[#33619] make first letter lowercase — sebi@... (sebi)

hello,

20 messages 2002/02/11
[#33620] Re: [newbie] make first letter lowercase — Tobias Reif <tobiasreif@...> 2002/02/11

sebi wrote:

[#33624] Re: [newbie] make first letter lowercase — "Jeff 'japhy' Pinyan" <jeffp@...> 2002/02/11

On Feb 11, Tobias Reif said:

[#33632] Re: [newbie] make first letter lowercase — Mathieu Bouchard <matju@...> 2002/02/12

[#33731] simple XML parsing (greedy / non-greedy — Ron Jeffries <ronjeffries@...>

Suppose I had this text

14 messages 2002/02/13

[#33743] qualms about respond_to? idiom — David Alan Black <dblack@...>

Hi --

28 messages 2002/02/13
[#33751] Re: qualms about respond_to? idiom — Dave Thomas <Dave@...> 2002/02/13

David Alan Black <dblack@candle.superlink.net> writes:

[#33754] Re: qualms about respond_to? idiom — David Alan Black <dblack@...> 2002/02/13

Hi --

[#33848] "Powered by Ruby" banner — Yuri Leikind <YuriLeikind@...>

Hello Ruby folks,

78 messages 2002/02/14
[#33909] Re: "Powered by Ruby" banner — Leon Torres <leon@...> 2002/02/14

On Thu, 14 Feb 2002, Yuri Leikind wrote:

[#33916] RE: "Powered by Ruby" banner — "Jack Dempsey" <dempsejn@...> 2002/02/15

A modest submission:

[#33929] Re: "Powered by Ruby" banner — yet another bill smith <bigbill.smith@...> 2002/02/15

Kent Dahl wrote:

[#33932] OT Netscape 4.x? was Re: "Powered by Ruby" banner — Chris Gehlker <gehlker@...> 2002/02/15

On 2/15/02 5:54 AM, "yet another bill smith" <bigbill.smith@verizon.net>

[#33933] RE: OT Netscape 4.x? was Re: "Powered by Ruby" banner — "Jack Dempsey" <dempsejn@...> 2002/02/15

i just don't understand why it didn't show up! dhtml/javascript, ok, but a

[#33937] Re: OT Netscape 4.x? was Re: "Powered by Ruby" banner — Chris Gehlker <gehlker@...> 2002/02/15

On 2/15/02 7:16 AM, "Jack Dempsey" <dempsejn@georgetown.edu> wrote:

[#33989] Re: OT OmniWeb [was: Netscape 4.x?] — Sean Russell <ser@...> 2002/02/16

Chris Gehlker wrote:

[#33991] Re: OT OmniWeb [was: Netscape 4.x?] — Rob Partington <rjp@...> 2002/02/16

In message <3c6e5e01_1@spamkiller.newsgroups.com>,

[#33993] Re: OT OmniWeb [was: Netscape 4.x?] — Thomas Hurst <tom.hurst@...> 2002/02/16

* Rob Partington (rjp@browser.org) wrote:

[#33925] Re: "Powered by Ruby" banner — Martin Maciaszek <mmaciaszek@...> 2002/02/15

In article <3C6CFCCA.5AD5CA67@scnsoft.com>, Yuri Leikind wrote:

[#33956] Re: "Powered by Ruby" banner — Leon Torres <leon@...> 2002/02/15

On Fri, 15 Feb 2002, Martin Maciaszek wrote:

[#33851] Ruby and .NET — Patrik Sundberg <ps@...>

I have been reading a bit about .NET for the last couple of days and must say

53 messages 2002/02/14

[#34024] Compiled companion language for Ruby? — Erik Terpstra <erik@...>

Hmmm, seems that my previous post was in a different thread, I'll try

12 messages 2002/02/16

[#34036] The GUI Returns — "Horacio Lopez" <vruz@...>

Hello all,

33 messages 2002/02/17

[#34162] Epic4/Ruby — Thomas Hurst <tom.hurst@...>

Rejoice, for you no longer have to put up with that evil excuse for a

34 messages 2002/02/18

[#34185] Operator overloading and multiple arguments — ptkwt@...1.aracnet.com (Phil Tomson)

I'm trying to overload the '<=' operator in a class in order to use it for

10 messages 2002/02/18

[#34217] Ruby for web development — beripome@... (Billy)

Hi all,

21 messages 2002/02/19

[#34350] FAQ for comp.lang.ruby — "Hal E. Fulton" <hal9000@...>

RUBY NEWSGROUP FAQ -- Welcome to comp.lang.ruby! (Revised 2001-2-18)

15 messages 2002/02/20

[#34375] Setting the Ruby continued — <jostein.berntsen@...>

Hi,

24 messages 2002/02/20
[#34384] Re: Setting the Ruby continued — Paulo Schreiner <paulo@...> 2002/02/20

Also VERY important:

[#34467] recursive require — Ron Jeffries <ronjeffries@...>

I'm having a really odd thing happen with two files that mutually

18 messages 2002/02/21

[#34503] special characters — Tobias Reif <tobiasreif@...>

Hi all,

13 messages 2002/02/22

[#34517] Windows Installer Ruby 166-0 available — Andrew Hunt <andy@...>

16 messages 2002/02/22

[#34597] rdoc/xml questions — Dave Thomas <Dave@...>

24 messages 2002/02/23

[#34631] Object/Memory Management — "Sean O'Dell" <sean@...>

I'm new to Ruby and the community here (I've been learning Ruby for a grand

44 messages 2002/02/23

[#34682] duplicate method name — Ron Jeffries <ronjeffries@...>

I just found a case in a test file where i had two tests of the same

16 messages 2002/02/24
[#34687] Re: duplicate method name — s@... (Stefan Schmiedl) 2002/02/24

Hi Ron.

[#34791] Style Question — Ron Jeffries <ronjeffries@...>

So I'm building this set theory library. The "only" object is supposed

13 messages 2002/02/25

[#34912] RCR?: parallel to until: as_soon_as — Tobias Reif <tobiasreif@...>

Hi,

18 messages 2002/02/26

[#34972] OT A Question on work styles — Chris Gehlker <gehlker@...>

As a Mac baby I just had to step through ruby in GDB *from the command line*

20 messages 2002/02/28

[#35015] Time Comparison — "Sean O'Dell" <sean@...>

I am using the time object to compare times between two files and I'm

21 messages 2002/02/28

Re: tiny contest: who's faster? (add_a_gram)

From: "Christoph" <chr_news@...>
Date: 2002-02-20 17:18:58 UTC
List: ruby-talk #34392
"Tobias Reif" <tobiasreif@pinkjuice.com> wrote in,
....

> Hi;
>
> Better than Superbowl, bigger than the Olympics;
> the Add-A-Gram contest :)

Hm, the Olympics are winding and I got some time on my hand.  I was
always wandering if this particularly idea was at all practical - the algorithm
does not guaranty that you found a longest match but the changes that you
are about as likely as a snowball in hell - There are plenty of variations
of this idea and a C-based implementation would probably be pretty fast.
Anyway,  the ratio of the running times of my scripts (which requires a cvs
version) and Daves addagram  is  ~ 0.7 ...

/Christoph

-----
class String

#   Original ordering - the fact that the larger number are primes probably
#   makes no difference for the smaller it certainly does
#
#    tmp =[2, 5,13,23,53,113,257,569,1249,2749,6089,13441,29683,65537,
#              144719,319567,705643,1558177,3440719,7597757,16777213,
#              37047091,81806611,180643669,398893589,880828517]
#
#    Ordered by hand  - I didn't put a lot of thought into this ...

    tmp =[180643669, 5,13,705643 ,81806611,113,257,569, 37047091,2749,
               6089,13441,29683,65537,7597757,319567, 23 ,1558177,3440719,
               144719,16777213, 1249, 53,  2, 398893589,880828517]

#   This particularly ordering results in two #ab_hash collisions  -
#    "brownish", "forgings"  and  "fogginess", "wishbones"

    PTable = Array.new(65).concat(tmp.dup.concat(Array.new(6).concat(tmp)))

    def ab_hash
        hsh = 0
        each_byte { |byte| hsh+=  PTable[byte] }
        hsh
    end
    def ab_eql?(other)
        unpack("c*").sort.pack("c*") == other.unpack("c*").sort.pack("c*")
    end
end

class LArray < Array
    class NAHash < Hash
        def sol(hsh)
            return [ fetch(hsh) { return nil } ]
        end
        def solution
            length.zero?  ?  nil : [to_a[0][1]]
        end
    end
    class AHash < NAHash
        PTable = String::PTable
        RTable = Array.new(65).concat(('A'..'Z').collect{|i| Regexp.new(i)}.\
                       concat(Array.new(6).concat(('a'..'z').\
                       collect{|i| Regexp.new(i)})))
        # the RTable stuff does not buy you all that much ...
        def sol(hsh)
            wrd = fetch(hsh) {return nil}
            wrd.each_byte do |byte|
                if (res = @prev.sol(hsh- PTable[byte]))  && \
                    # res[0].ab_eql?(wrd.sub(/#{byte.chr}/,''))
                    res[0].ab_eql?(wrd.sub(RTable[byte],''))
                    return res.unshift(wrd)
                end
            end
            delete(hsh)
            return nil
        end
        def initialize(prev)
            @prev = prev
        end
        def solution
            each do |hsh,wrd|
                wrd.each_byte do |byte|
                    if (res = @prev.sol(hsh- PTable[byte]))  && \
                       # res[0].ab_eql?(wrd.sub(/#{byte.chr}/,''))
                        res[0].ab_eql?(wrd.sub(RTable[byte],''))
                        return res.unshift(wrd)
                    end
                end
            end
            return nil
        end
    end
    def initialize(len)
        super(len)
        self[3] = NAHash.new
        for i in 4...len do self[i] = AHash.new(self[i-1]) end
    end
    def solution
        (length-1).downto(0) do |i|
            if res = self[i].solution
                return res
            end
        end
    end
end


table = LArray.new(30)
File.open("word.lst").read.split.each do |wrd|
    table[wrd.length][wrd.ab_hash] = wrd unless wrd.length < 3
end
puts table.solution

=begin
which might result in

underestimations
underestimation
determinations
antimodernist
terminations
nitrosamine
antinomies
nominates
misatone
atonies
tisane
anise
sine
sen
=end
----


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.325 / Virus Database: 182 - Release Date: 2/19/2002


In This Thread

Prev Next