一个指针指向 s = "horizon" 这个字符串的下标 idx,初始从 0 开始。
按字符串输入的顺序来枚举每个输入的字符串,这个字符串中存在 s[idx] 这个字符,则 idx++ ,否则继续枚举下一个字符串。
如果 idx==7,即 s 这个串的所有字符都可以在输入的字符串中按输入顺序在每个字符串中找到一个对应字符,那么就说明可以找到这么一个子序列,否则遍历完所有输入的字符串,idx 仍然小于 7 ,说明找不到。
时间复杂度:O(nm)
探险家在一块古老的石碑上发现了 n 行铭文,每一行恰好由 m 个符号组成。传说需要从第 1 行到第 n 行依次各挑选一个符号,将这些符号按行序拼接成一条咒语。如果最终拼接出的咒语恰好为 "horizon",即可唤醒沉睡的力量。
你能否帮助判断是否存在一种挑选方案,使得最终形成的咒语正好是 "horizon"?注意,挑选的符号必须严格按从上到下的顺序,每行必须且只能选择一个符号,最终得到的字符串长度等于 n。
约束条件:
1000 的正整数。In following contests:
By signing up a CodeFun2000 universal account, you can submit code and join discussions in all online judging services provided by us.