Given a set of keywords words
and a string S
, make all appearances
of all keywords in S
bold. Any letters between <b>
and
</b>
tags become bold.
The returned string should use the least number of tags possible, and of course the tags should form a valid combination.
For example, given that words = ["ab", "bc"]
and S = "aabcd"
, we
should return "a<b>abc</b>d"
. Note that returning "a<b>a<b>b</b>c</b>d"
would use more tags, so it is incorrect.
Note:
words
has length in range [0, 50]
.words[i]
has length in range [1, 10]
.S
has length in range [0, 500]
.words[i]
and S
are lowercase letters.