Problem:
三目並べ

三目並べは，３ × ３のマス目の中に交互に ○ と × を入れていき、縦・横・斜めの何れかに一列 ○ か × が並んだときに、勝ちとなるゲームです（図1〜図3 を参照）

図１：○の勝ち

図２：× の勝ち

図３：引き分け

三目並べは、○と×が交互にマス目を埋めていき、どちらかが一列揃ったときにゲーム終了となります。そのため、図 4 のように、○と×が両方とも一列そろっている場合はありえない局面です。ありえない局面が入力されることはありません。

図４：ありえない局面

三目並べの盤面を読み込んで、勝敗の結果を出力するプログラムを作成して下さい。

Input

入力は複数のデータセットからなります。各データセットとして、盤面を表す１つの文字列が１行に与えられます。
盤面の文字列は、○、×、空白をそれぞれ半角英小文字の o、x、s であらわし、下図のマス目の順に並んでいます。

データセットの数は 50 を超えません。

Output

データセットごとに、○が勝ちなら半角英小文字の o を、×が勝ちなら半角英小文字の x を、引き分けならば半角英小文字の d を１行に出力してください。

Sample Input

ooosxssxs
xoosxsosx
ooxxxooxo

Output for the Sample Input

o
x
d

Solution in Ruby (judge verdict: Accepted)

n = gets
num = [0]
until n.nil?
 nn = n.chomp
 x = nn.split("")

 x.each do |k|
  num << k
 end
 maru = num.each_with_index.select{|e, i| e == "o"}.map{|e| e[1]}
 batu = num.each_with_index.select{|e, i| e == "x"}.map{|e| e[1]}
  if maru.include?(2) && maru.include?(1) && maru.include?(3)
   puts "o"
  elsif maru.include?(4) && maru.include?(1) && maru.include?(7)
   puts "o"
  elsif maru.include?(6) && maru.include?(3) && maru.include?(9)
   puts "o"
  elsif maru.include?(8) && maru.include?(7) && maru.include?(9)
   puts "o"
  elsif maru.include?(5) && maru.include?(2) && maru.include?(8)
   puts "o"
  elsif maru.include?(5) && maru.include?(1) && maru.include?(9)
   puts "o"
  elsif maru.include?(5) && maru.include?(3) && maru.include?(7)
   puts "o"
  elsif maru.include?(5) && maru.include?(4) && maru.include?(6)
   puts "o"
  elsif batu.include?(2) && batu.include?(1) && batu.include?(3)
   puts "x"
  elsif batu.include?(4) && batu.include?(1) && batu.include?(7)
   puts "x"
  elsif batu.include?(6) && batu.include?(3) && batu.include?(9)
   puts "x"
  elsif batu.include?(8) && batu.include?(7) && batu.include?(9)
   puts "x"
  elsif batu.include?(5) && batu.include?(2) && batu.include?(8)
   puts "x"
  elsif batu.include?(5) && batu.include?(1) && batu.include?(9)
   puts "x"
  elsif batu.include?(5) && batu.include?(3) && batu.include?(7)
   puts "x"
  elsif batu.include?(5) && batu.include?(4) && batu.include?(6)
   puts "x"
  else
   puts "d"
  end
  
 n = gets
 num = [0]
end