Commit 0ed0c36

mo khan <mo.khan@gmail.com>
2020-08-23 19:53:41
Try again
1 parent 38adf67
Changed files (1)
misc
subsequence
misc/subsequence/main.rb
@@ -274,7 +274,35 @@ class Solution
       end
     end
   end
+
+  def self.run(sequence, pattern, index = 0)
+    return index if pattern.empty?
+    return index if sequence.empty?
+
+    atom = pattern[0]
+    if atom != '*'
+      if sequence[0] == atom
+        run(sequence[1..-1], pattern[1..-1], index)
+      else
+        run(sequence[1..-1], pattern, index + 1)
+      end
+    else
+      if sequence[1] == pattern[1]
+        run(sequence[1..-1], pattern[1..-1], index)
+      else
+        run(sequence[1..-1], pattern, index)
+      end
+    end
+  end
 end
+=begin
+ x
+|a|b|c|d|e|f|
+
+ y
+|a|*|d|*|f|
+
+=end
 
 assert_equal 0, Solution.run('abcdef', 'a*d*f')
 assert_equal 0, Solution.run('abcdefg', 'a*d*f')