C题LCS (构造) 首先将a,b,c排序一下,我们假设a是最大的,c是最小的,那么如果s1和s2的lcs是a,s2和s3的lcs是b,那假设a跟b毫无重叠,s1和s3的最小重叠长度也有a+b-n,如果a+b-n仍比c大,则无解,否则可以一步一步构造出来 先让所有全部加进c个'a',然后变为a-c,b-c,0。再让三个字符串中的两个分别加上a-c,b-c就行了。最后,再让三个字符串加上n-size个不一样的字符,凑成n,就构造完了。 下面是代码 #include <bits/stdc++.h> #define ll long long #define endl '\n' int ...