Task: | Edit distance |
Sender: | djbb |
Submission time: | 2016-09-17 15:12:10 +0300 |
Language: | C++ |
Status: | READY |
Result: | ACCEPTED |
test | verdict | time | |
---|---|---|---|
#1 | UNKNOWN | -- | details |
#2 | UNKNOWN | -- | details |
#3 | UNKNOWN | -- | details |
#4 | UNKNOWN | -- | details |
#5 | UNKNOWN | -- | details |
#6 | UNKNOWN | -- | details |
#7 | UNKNOWN | -- | details |
#8 | UNKNOWN | -- | details |
#9 | UNKNOWN | -- | details |
#10 | UNKNOWN | -- | details |
#11 | UNKNOWN | -- | details |
#12 | UNKNOWN | -- | details |
#13 | UNKNOWN | -- | details |
#14 | UNKNOWN | -- | details |
#15 | UNKNOWN | -- | details |
#16 | UNKNOWN | -- | details |
#17 | UNKNOWN | -- | details |
#18 | UNKNOWN | -- | details |
#19 | UNKNOWN | -- | details |
Code
#include <algorithm> #include <iostream> #include <vector> int main(){ using namespace std; ios::sync_with_stdio(0); string word1 = "", word2 = ""; getline(cin, word1); getline(cin, word2); int n = word1.length(); int m = word2.length(); /* //make strings same size int n = word1.length(), m = word2.length(); string* shorter = (n > m? &word2: &word1); int diff = abs(m-n); while(diff>0){ shorter->append("_"); diff--; } */ vector<vector<int> > dist(n + 1, vector<int>(m+ 1)); for(int i = 0; i <= n; i++){ for(int j = 0; j<= m; j++){ if(i==0){ dist[i][j] = j; } else if(j==0){ dist[i][j] = i; } else if (word1[i-1] == word2[j-1]){ dist[i][j] = dist[i-1][j-1]; } else { dist[i][j] = 1 + min({ dist[i-1][j], dist[i][j-1], dist[i-1][j-1] }); } } } cout << dist[n][m] << "\n"; }
Test details
Test 1
Verdict: UNKNOWN
input |
---|
NEABJPJOI RFMQRJKJKIA |
correct output |
---|
8 |
user output |
---|
(not available) |
Test 2
Verdict: UNKNOWN
input |
---|
TWXFUABGBNLTBFNSUVQW GPNJILFXJUIZPLTVUIB |
correct output |
---|
19 |
user output |
---|
(not available) |
Test 3
Verdict: UNKNOWN
input |
---|
HSMOWJXKGRWSMD JMRTLLNPXKKXZC |
correct output |
---|
14 |
user output |
---|
(not available) |
Test 4
Verdict: UNKNOWN
input |
---|
NGPYCNPO UQPXWVLGHC |
correct output |
---|
9 |
user output |
---|
(not available) |
Test 5
Verdict: UNKNOWN
input |
---|
SQTCKWAMFJEBV IUWGGNJOMQFP |
correct output |
---|
13 |
user output |
---|
(not available) |
Test 6
Verdict: UNKNOWN
input |
---|
VDREWLLHMEVGFGBXJJOSSLHNJBOTRK... |
correct output |
---|
4047 |
user output |
---|
(not available) |
Test 7
Verdict: UNKNOWN
input |
---|
EIIUUQXSAFMTRSEZSFYNSAGHUWTSGY... |
correct output |
---|
3769 |
user output |
---|
(not available) |
Test 8
Verdict: UNKNOWN
input |
---|
HVOXUVAZYFBKEWQXVGJMYXCCXBWRNW... |
correct output |
---|
3806 |
user output |
---|
(not available) |
Test 9
Verdict: UNKNOWN
input |
---|
AWGASQANDZQTVKXQDKWNADQDBXKCOK... |
correct output |
---|
4069 |
user output |
---|
(not available) |
Test 10
Verdict: UNKNOWN
input |
---|
WXAAJJALZRLGLSXDPUPURULYINBFGX... |
correct output |
---|
3874 |
user output |
---|
(not available) |
Test 11
Verdict: UNKNOWN
input |
---|
A A |
correct output |
---|
0 |
user output |
---|
(not available) |
Test 12
Verdict: UNKNOWN
input |
---|
A B |
correct output |
---|
1 |
user output |
---|
(not available) |
Test 13
Verdict: UNKNOWN
input |
---|
AA A |
correct output |
---|
1 |
user output |
---|
(not available) |
Test 14
Verdict: UNKNOWN
input |
---|
A AA |
correct output |
---|
1 |
user output |
---|
(not available) |
Test 15
Verdict: UNKNOWN
input |
---|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA... |
correct output |
---|
5000 |
user output |
---|
(not available) |
Test 16
Verdict: UNKNOWN
input |
---|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA... |
correct output |
---|
0 |
user output |
---|
(not available) |
Test 17
Verdict: UNKNOWN
input |
---|
B AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA... |
correct output |
---|
5000 |
user output |
---|
(not available) |
Test 18
Verdict: UNKNOWN
input |
---|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA... |
correct output |
---|
5000 |
user output |
---|
(not available) |
Test 19
Verdict: UNKNOWN
input |
---|
KITTEN SITTING |
correct output |
---|
3 |
user output |
---|
(not available) |