hardStringString Matching 0 views

Find the Occurrence of First Almost Equal Substring

You are given two strings s and pattern.

You are given two strings s and pattern.

A string x is called almost equal to y if you can change at most one character in x to make it identical to y.

Return the smallest starting index of a substring in s that is almost equal to pattern. If no such index exists, return -1.

Example 1

Input: s = "abcdefg", pattern = "bcdffg"

Output: 1

Explanation: The substring s[1..6] == "bcdefg" can be converted to "bcdffg" by changing s[4] to "f" .

Example 2

Input: s = "ababbababa", pattern = "bacaba"

Output: 4

Explanation: The substring s[4..9] == "bababa" can be converted to "bacaba" by changing s[6] to "c" .

Example 3

Input: s = "abcd", pattern = "dba"

Output: -1

Example 4

Input: s = "dde", pattern = "d"

Output: 0

Constraints

  • 1 <= pattern.length < s.length <= 10^5
  • s and pattern consist only of lowercase English letters.

Hints

Companies

No companies reported yet.

Discussion

Sign in to join the discussion.

Loading discussion...

Test results

No test cases yet.