Given two strings s1 and s2, create a new string s3 which is as short as possible and contains both strings.
If
s1 = [1 2 3 4 5]
and
s2 = [5 4 3 2]
then
s3 = [1 2 3 4 5 4 3 2]
There is guaranteed to be one best solution.
This would be improved by a richer test set to avoid solutions based on simple lookup of the test cases.
I think we can assume the entries are all positive integers, but it would be good if that was stated in the problem specification.
Definetely agree. Adding more tests in the test suite and rescoring the solutions will elmiminate solution under a score of 92
My 33 is a terrible solution. Please add more test cases.
Tim's 80 is very good and my 83 is also valid. Addition of a common random value at an end overlap will eliminate chicanery. v=randi(100) [1 2 3 v] [v 4 5].
Created legitimate size 72.
Added a few more tests. Thanks for the comments!
s1 = [3 1 4 1 5 9 2 6 5 3 5];
s2 = [9 2 6 5];
s3_correct = [3 1 4 1 5 9 2 6 5 3 5]; maybe is not correct ;-)
Problems 1 and 2 have alternate solutions:
1) [5 4 3 1 2 3 4 5]
2) [1 0 1 7 7 7 6 0 1]
Did I just solved this myself? Toughest for me so far. Thanks!!!
can't understand
hello, have you ever tried s1 = [ 1 2 3 ], s2= [1 2]?
Nice :) I was trying to think of clever ways to use convolution, but didn't manage. This should be the leading solution instead of the lookup based on the test cases..
well commneted
Come on. Put in a general solution rather than gaming the solution set.
Find common elements in matrix rows
810 Solvers
Project Euler: Problem 1, Multiples of 3 and 5
1064 Solvers
243 Solvers
Who is the smartest MATLAB programmer?
469 Solvers
1078 Solvers