結果

問題 No.40 多項式の割り算
ユーザー d_nishiyama85
提出日時 2016-07-17 11:03:52
言語 Ruby
(3.4.1)
結果
MLE  
実行時間 -
コード長 540 bytes
コンパイル時間 112 ms
コンパイル使用メモリ 7,680 KB
実行使用メモリ 568,484 KB
最終ジャッジ日時 2024-10-15 15:15:36
合計ジャッジ時間 14,534 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 3 MLE * 1 -- * 28
権限があれば一括ダウンロードができます
コンパイルメッセージ
Main.rb:24: warning: assigned but unused variable - d
Main.rb:29: warning: assigned but unused variable - q
Syntax OK

ソースコード

diff #

def divide(poly, div, q)
  if poly.length < div.length
    return [q.reverse, poly]
  end
  c = poly[-1] / div[-1]
  q << c
  _poly = []
  _div = div.clone

  while _div.length < poly.length
    _div.unshift(0)
  end

  poly.length.times{|d|
    _poly[d] = poly[d] - c * _div[d]
  }
  while _poly[-1] == 0
    _poly.pop()
  end

  divide(_poly, div, q)
end

d = gets.to_i
as = gets.strip.split.map{|e| e.to_i}

div = [0, -1, 0, 1]

q, r = divide(as, div, [])

if r.empty?
  puts 0
  puts 0
else
  puts (r.length - 1)
  puts r.join(' ')
end
0