結果
問題 |
No.225 文字列変更(medium)
|
ユーザー |
|
提出日時 | 2019-05-31 14:04:56 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 658 bytes |
コンパイル時間 | 635 ms |
コンパイル使用メモリ | 66,312 KB |
最終ジャッジ日時 | 2025-01-07 04:11:04 |
ジャッジサーバーID (参考情報) |
judge3 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 2 WA * 20 |
ソースコード
#include <iostream> #include <string> using namespace std; int N, M; string S, T; int dp[1001][1001]; int rec(int i, int j){ if(i < 0 || j < 0) return 0; if(dp[i][j] != -1) return dp[i][j]; int ret = 1000001; if(S[i] == T[j]) ret = rec(i-1, j-1); else { ret = min(ret, rec(i-1, j) + 1); ret = min(ret, rec(i, j-1) + 1); ret = min(ret, rec(i-1, j-1) + 1); } return dp[i][j] = ret; } int main(void){ // Your code here! for(int i = 0; i <= 1000; i++) for(int j = 0; j <= 1000; j++) dp[i][j] = -1; cin >> N >> M; cin >> S >> T; cout << rec(S.size()-1, T.size() - 1) << endl; }