Show
Ignore:
Timestamp:
09/03/08 02:04:11 (4 months ago)
Author:
hajimehoshi
Message:

Refactored

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/ruby/bokeshi/trunk/bokeshi/cpu.rb

    r18571 r18694  
    1515      else 
    1616        if seqs.all?{|seq| seq.length == 1} 
    17           seqs.size % 2 == 0 
     17          seqs.size % 2 == 0  
    1818        else 
    1919          seqs.inject(0) do |result, seq| 
     
    3030        seqs = stage_or_seqs 
    3131      end 
    32       removings = [] 
    33       now_winnable = winnable?(seqs) 
    34       seqs.each do |seq| 
    35         next_seqs = seqs.select{|s| s != seq} 
    36         seq.splits.each do |removing, result| 
    37           if !now_winnable or !winnable?(next_seqs + result) 
    38             removings << removing 
     32      if winnable?(seqs) 
     33        seqs.map do |seq| 
     34          seq.splits.select do |removing, result| 
     35            !winnable?(seqs + result - [seq]) 
     36          end.map do |removing, result| 
     37            removing 
    3938          end 
    40         end 
     39        end.flatten 
     40      else 
     41        seqs.map{|seq| seq.splits.keys}.flatten 
    4142      end 
    42       removings 
    4343    end 
    4444