#P14896. [ICPC 2018 Yokohama R] Shortest Common Non-Subsequence
[ICPC 2018 Yokohama R] Shortest Common Non-Subsequence
Description
序列 的一个子序列是指可以通过从原序列 中选取某些或不选取任何元素并保持原有顺序而得到的序列。例如,"ICPC" 是 "MICROPROCESSOR" 的一个子序列。
两个序列的公共子序列是指同时作为这两个序列子序列的序列。著名的最长公共子序列问题是寻找两个给定序列的最长公共子序列。
在本问题中,相反地,我们考虑最短公共非子序列问题:给定两个由 0 和 1 组成的序列,你的任务是找到一个同样由 0 和 1 组成的最短序列,该序列不是这两个序列中任何一个的子序列。
Input Format
输入由两行组成,构成一个测试用例。两行都是仅由 0 和 1 组成的序列。它们的长度在 1 到 4000 之间(含)。
Output Format
在一行中输出两个给定序列的最短公共非子序列。如果存在两个或更多这样的序列,你应该输出字典序最小的那个。这里,对于长度相同的两个序列 和 ,如果存在 使得 ,,,且 ,则称 的字典序小于 ,其中 是序列 的第 个字符。
0101
1100001
0010
101010101
010101010
000000
11111111
00000000
01
京公网安备 11011102002149号