結果

問題 No.225 文字列変更(medium)
ユーザー pome-botpome-bot
提出日時 2020-09-02 11:41:47
言語 Ruby
(3.4.1)
結果
AC  
実行時間 544 ms / 5,000 ms
コード長 645 bytes
コンパイル時間 148 ms
コンパイル使用メモリ 7,808 KB
実行使用メモリ 19,456 KB
最終ジャッジ日時 2024-11-21 14:06:50
合計ジャッジ時間 7,705 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 22
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

# https://qiita.com/drken/items/a5e6fe22863b7992efdb
# https://yukicoder.me/problems/no/225

# n m
# s
# t

n, m = gets.split.map(&:to_i)
s = gets.chomp
t = gets.chomp

# inf = [n, m].max + 1
inf = 9999
array_dp = Array.new(n+1) { Array.new(m+1, inf) }
array_dp[0][0] = 0
n.times do |i|
  array_dp[i+1][0] = i+1
end
m.times do |i|
  array_dp[0][i+1] = i+1
end

n.times do |i|
  m.times do |j|
    if s[i] == t[j]
      array_dp[i+1][j+1] = [ array_dp[i][j], array_dp[i+1][j]+1, array_dp[i][j+1]+1 ].min
    else
      array_dp[i+1][j+1] = [ array_dp[i][j], array_dp[i+1][j], array_dp[i][j+1] ].min + 1
    end
  end
end


  puts array_dp[n][m]

0