UOJ Logo

NOI.AC

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#212112#3817. 写字Panjunnan045ms1396kbC++1.0kb2024-10-13 11:18:032024-10-13 12:23:55

answer

#include <iostream>
#include <vector>
#include <string>
#include <algorithm>

using namespace std;

int minTimeToWrite(string S, string T) {
    int n = S.size();
    int m = T.size();
    vector<vector<int> > dp(n + 1, vector<int>(m + 1, -1));

    dp[0][0] = 0;
    for (int i = 1; i <= n; ++i) {
        dp[i][0] = i;
    }

    for (int i = 1; i <= n; ++i) {
        for (int j = 1; j <= m; ++j) {
            if (S[i - 1] == T[j - 1]) {
                dp[i][j] = dp[i - 1][j - 1] + 1;
            } else {
                dp[i][j] = dp[i - 1][j] + 1; 
                for (int k = 1; k < i; ++k) {
                    if (S[k - 1] == T[j - 1]) {
                        dp[i][j] = min(dp[i][j], dp[k][j] + abs(k - i));
                    }
                }
            }
        }
    }

    return dp[n][m];
}

int main() {
    int n, m;
    cin >> n >> m;
    string S, T;
    cin >> S >> T;

    int result = minTimeToWrite(S, T);
    cout << result << endl;

    return 0;
}

详细

小提示:点击横条可展开更详细的信息

Subtask #1:

score: 0
Wrong Answer

Test #1:

score: 0
Wrong Answer
time: 0ms
memory: 1256kb

input:

1 1
v
v

output:

1

result:

wrong answer 1st numbers differ - expected: '0', found: '1'

Subtask #2:

score: 0
Wrong Answer

Test #3:

score: 0
Wrong Answer
time: 0ms
memory: 1300kb

input:

26 300
ywzhvjnpdfqtukimsrbxageloc
brsmsrbxbxbxbxagagagegelococololegaxagaxaxbxbrbxbrsrsmikimikikimim...

output:

25

result:

wrong answer 1st numbers differ - expected: '299', found: '25'

Subtask #3:

score: 0
Wrong Answer

Test #6:

score: 0
Wrong Answer
time: 45ms
memory: 1396kb

input:

300 300
hgbfdbgcghedefchdabhgdddahcdedebceffegfbceehceeheggffhhddbecbfdhceeedcaeeebdaddfgccggfdcachg...

output:

299

result:

wrong answer 1st numbers differ - expected: '3643', found: '299'