题目描述
现有10个字符,每个字符串的长度为100个 字符,请用任意语言编写程序找出10个字符串都包含的最长的字串。
现有10个字符,每个字符串的长度为100个 字符,请用任意语言编写程序找出10个字符串都包含的最长的字串。
10个字符串分别截取每一位,对每一位的值进行竖向比较 , 如果都是一样的,那么将这个值保留下来
str_1 = "1234567890"
str_2 = "1235486332"
str_3 = "1234567890"
str_4 = "1234567890"
str_5 = "1234567890"
str_6 = "1234567890"
str_7 = "1234567890"
str_8 = "1234567890"
str_9 = "1234567890"
str_10 = "1234567890"
res = []
daiding = set()
for i in range(10):
str_1_1 = str_1[i]
str_2_1 = str_2[i]
str_3_1 = str_3[i]
str_4_1 = str_4[i]
str_5_1 = str_5[i]
str_6_1 = str_6[i]
str_7_1 = str_7[i]
str_8_1 = str_8[i]
str_9_1 = str_9[i]
str_10_1 = str_10[i]
daiding.add(str_1_1)
daiding.add(str_2_1)
daiding.add(str_3_1)
daiding.add(str_4_1)
daiding.add(str_5_1)
daiding.add(str_6_1)
daiding.add(str_7_1)
daiding.add(str_8_1)
daiding.add(str_9_1)
daiding.add(str_10_1)
if daiding.__len__() ==1:
res.append(str_1_1)
daiding.clear()
print(res)
10 回答11.2k 阅读
15 回答8.1k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
8 回答5.9k 阅读
2 回答2.7k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
北大有个题目,除了数据不同其他基本一致, 你可以看一下 http://poj.org/problem?id=3080
题目的意思就是输入不超过十个字符串,每个字符串的长度不超过60,然后找出最长的公共子串,如果有好几个子串长度相同,就输出字典序最小的,如果公共子串的长度小于3就不输出了(因为是DNA)
你可以根据下面的程序修改一下