Hatena::Groupkill

イン殺 RSSフィード

2009-05-01

[]平仮名四文字 + "!" 平仮名四文字 + "!" - イン殺 を含むブックマーク はてなブックマーク - 平仮名四文字 + "!" - イン殺

「"ぁ"から"ん"までの 83 文字から任意の 4 字ということで、たかだか

irb(main):001:0> 83 ** 4
=> 47458321

4700 万通り強の組み合わせであり、わたしの中の可能性の獣曰く、こういうものこそイットの力で踏み潰すべきであるのです。
試しに["らぽけね!"]でググった限り、同じ実験をしているところはなさそうなので、全パターンをテキスト出力する Ruby スクリプトを書きました。」

require 'jcode'

class Array
  def succ_h!
    i = self.length - 1
    begin
      if self[i] == '' then
        self[i] = ''
        i -= 1
        next
      end
      break
    end while (i>=0)

    self[i].succ! if i >= 0
    self
  end
end

w = ["","","",""]
83.times {|i|
  open(format("%04d.txt",i), 'w') {|f|
    (83 ** 3).times {
      f.puts w.join + ""
      w.succ_h!
    }
  }
}

「 Ruby 1.8.7 以降の Array#permutation だとメモリ使用量が多すぎるので、適当に自作。実行すると 0000.txt から 0082.txt まで、約

irb(main):002:0> 83 ** 4 * (8+2+2)
=> 569499852
irb(main):003:0> 83 ** 4 * (8+2+2) / 1024
=> 556152
irb(main):004:0> 83 ** 4 * (8+2+2) / 1024 / 1024
=> 543

543MB のテキストファイルに出力します。
あとはこれでググった件数をソートして公開すれば、この話題を終わらせた満足感を胸にいい夢見ながら眠れるところですが、 4700 万回ググって結果を DB なり何なりに格納するのはローカルではやりたくないので Google App Engine でも導入するべきかなーと検討中。
なお、参考までにいくつか試してみた結果。」

google:"けいおん!"704000
google:"よつばと!"897000
google:"しぐるい!"588
google:"うそだっ!"27700
google:"つんでれ!"133000
google:"きりさき!"7220
google:"じひびき!"2380
google:"かくてき!"11600
google:"もりさき!"18400
google:"うずまき!"672000
google:"たつまき!"68900
google:"てりやき!"239000
google:"だしまき!"44700
google:"だてまき!"13200
google:"てばさき!"10500
google:"ささやき!"1750000
google:"ときめき!"3490000
google:"きびたき!"4330
google:"みずたき!"3820
google:"ぜろしき!"4150
google:"あくへき!"1430
google:"てきぱき!"298000
google:"いするぎ!"11400
google:"わかさぎ!"254000
google:"かんぺき!"104000
google:"よりぬき!"161000
google:"くじびき!"226000
google:"まなじり!"17200
google:"ふともも!"549000
google:"くちびる!"865000
google:"くちなわ!"7710
google:"さいたま!"14500000
google:"へべれけ!"210000
google:"みみなり!"35700
google:"たるざけ!"1970
google:"あざらし!"634000
google:"あくめつ!"151
google:"いつまで!"7750000
google:"あなてま!"1230

まとめ。そうねえ。さいたまは凄い、ということで。」

参考

いんさつ!いんさつ!2009/05/07 21:01あのですね、なんかぐぐるさん、勝手に「!」抜かして検索してくれちゃったりしてません?

xx-internetxx-internet2009/05/08 07:15たぶんそうです。さいたま最強はそういうことでしょう。句点や読点も似たような扱いですね。

トラックバック - http://kill.g.hatena.ne.jp/xx-internet/20090501