Cody

# Problem 848. Calculate a modified Levenshtein distance between two strings

Solution 489921

Submitted on 23 Aug 2014 by rifat
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

### Test Suite

Test Status Code Input and Output
1   Pass
%% s1 = 'I do not like MATLAB'; s2 = 'I love MATLAB a lot'; d_correct = 4; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = 'i' 'do' 'not' 'like' 'matlab' c2 = 'i' 'love' 'matlab' 'a' 'lot'

2   Pass
%% s1 = 'Which words need to be edited?'; s2 = 'Can you tell which words need to be edited?'; d_correct = 3; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = 'which' 'words' 'need' 'to' 'be' 'edited' c2 = 'can' 'you' 'tell' 'which' 'words' 'need' 'to' 'be' 'edited'

3   Pass
%% s1 = 'Are these strings identical?'; s2 = 'These strings are not identical!'; d_correct = 3; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = 'are' 'these' 'strings' 'identical' c2 = 'these' 'strings' 'are' 'not' 'identical'

4   Pass
%% s1 = 'Settlers of Catan is my favorite game'; s2 = 'Tic-tac-toe is also one of my favorite games'; d_correct = 6; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = 'settlers' 'of' 'catan' 'is' 'my' 'favorite' 'game' c2 = 'tic-tac-toe' 'is' 'also' 'one' 'of' 'my' 'favorite' 'games'

5   Pass
%% s1 = 'This one should be simple, but maybe it isn''t'; s2 = 'This one should be simple, but maybe it isn''t'; d_correct = 0; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = 'this' 'one' 'should' 'be' 'simple' 'but' 'maybe' 'it' 'isn't' c2 = 'this' 'one' 'should' 'be' 'simple' 'but' 'maybe' 'it' 'isn't'

6   Pass
%% s1 = 'Testing, testing, one, two, three,...'; s2 = 'Testing, testing, one, two,...'; d_correct = 1; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = 'testing' 'testing' 'one' 'two' 'three' c2 = 'testing' 'testing' 'one' 'two'

7   Pass
%% s1 = 'How many edits do you think there are in this example? I don''t know!'; s2 = 'Well, it is hard to tell how many edits are required because there are big differences in the two strings.'; d_correct = 15; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = Columns 1 through 10 'how' 'many' 'edits' 'do' 'you' 'think' 'there' 'are' 'in' 'this' Columns 11 through 14 'example' 'i' 'don't' 'know' c2 = Columns 1 through 10 'well' 'it' 'is' 'hard' 'to' 'tell' 'how' 'many' 'edits' 'are' Columns 11 through 19 'required' 'because' 'there' 'are' 'big' 'differences' 'in' 'the' 'two' Column 20 'strings'