#3892. 兔猫信奥学院的单词拼接挑战

兔猫信奥学院的单词拼接挑战

🐰😺🔤 兔猫信奥学院的单词拼接挑战 🔤😺🐰

在信奥学院的图书馆里,加菲老师拿出古老的字典,对小兔和小猫说:“给你一段文字 ss,和一个单词列表 wordDict,请问能否用列表中的一个或多个单词(可以重复使用)拼接出完整的 ss?如果能,返回 true,否则返回 false。”


输入格式

第一行:字符串 s。
第二行:整数 m,表示字典单词数。
第三行:m 个单词 wordDict[i],用空格分隔。
  • 1s3001 \le |s| \le 300
  • 1m10001 \le m \le 1000
  • 1wordDict[i]201 \le |\,\text{wordDict}[i]\,| \le 20
  • s 和 wordDict 中所有字符串仅由小写英文字母组成,且互不相同。

输出格式

输出 "true" 或 "false"(不含引号),表示是否能拼接出 s。

样例 1

leetcode
2
leet code
true
  • 解释: "leetcode" = "leet" + "code"。

样例 2

applepenapple
2
apple pen
true
  • 解释: "applepenapple" = "apple" + "pen" + "apple"。

样例 3

catsandog
5
cats dog sand and cat
false
  • 解释: 无法拼接出 "catsandog"。


🎓 加菲老师寄语:
本题是经典的「区间可达」动态规划,思路清晰、易于实现。掌握后,你可以应对更多字符串分割与匹配类问题。继续加油,开启更高级的字符串挑战吧!