fork download
  1. def start_end_input():
  2. S_i = list(input().split())
  3. E_i = list(input().split())
  4. return(S_i,E_i)
  5.  
  6. def find_proper_genes(S,E):
  7. genome = """ATAGTGTCTTCAAAGCTCCAGGTGGTCCTTCTAAATAGCGCCTAAGCAGCTTCCTTATGACAGGGTGTCGGCGATTATTTATCTCTGTGTTCTATTTTTAAGCAAGTTGTCATCATTGAAATAGAGAACTCATTTTTTTGTTTTTTGTATTTCTTCTTTTTTTTGTATGCATTTTTATTTGTGAACTGTAAATTTTCATAACGTTCACAGAGTTTTAAATAATTTACAGTTAAATCAAAATCACTTCACTACATATTGCTACTTCAAATAACTAATCTAACTGGAGTAGTGGTGTTAAACAGGAATCACGAGGCGAAGAAATCCAGTACGTGTAAACGAGCGAACGAATGAGATTATCAGTTATATTTTCATCGTCATTGTCGCGTGGACAATACACTAAACATATCGCTAAAGCTTCATCTACACGATTAGCGAAAATTTTATATGGAATTGACACCTCGCACGCAGATTTCTGCATACGATTGCACATTGTGAACAAATATGCTATTCGTGTATAAACGCCTTAAAACACATGGGTGGTCGAAT"""
  8. gene_list = list(genome)
  9. gene_list_count = len(gene_list)-3
  10. gene_panals = []
  11. for start in S:
  12. for end in E:
  13. S_int = len(start)
  14. E_int = len(end)
  15. result = []
  16. for i in range(gene_list_count):
  17. Genes =gene_list[i:i+S_int]
  18. result.append("".join(Genes))
  19. gene_string = ''
  20. for j in result:
  21. J = list(j)
  22. if j==start:
  23. if gene_string == '':
  24. gene_string = j
  25. else:
  26. gene_string = ''
  27. else:
  28. gene_string_1st = ''.join(list(gene_string)[0:S_int])
  29. gene_string_last = ''.join(list(gene_string)[-E_int:])
  30. gene_string_length = len(gene_string)
  31. if gene_string_last == end and gene_string_1st == start and gene_string_length >= S_int+E_int:
  32. gene_panals.append(gene_string)
  33. gene_string = ''
  34. elif gene_string_1st == start:
  35. gene_string+=J[3]
  36. for panal in gene_panals:
  37. all = S+E
  38. for pattern in all:
  39. print(pattern,''.join(list(panal)[1:-1]))
  40. print(pattern in ''.join(list(panal)[1:-1]))
  41. if pattern in ''.join(list(panal)[1:-1]):
  42. if panal in gene_panals:
  43. gene_panals.remove(panal)
  44. return(gene_panals)
  45.  
  46. def find_shortest_panals(L):
  47. if L == []:
  48. return('None')
  49. else:
  50. return('gg')
  51.  
  52. S_i,E_i = start_end_input()
  53. print(find_proper_genes(S_i,E_i))
  54.  
  55.  
Success #stdin #stdout 0.12s 14084KB
stdin
GTGT AAAT GTTTTA
TTTTT GTAAA AAATAA
stdout
GTGT TGTTCTATTTT
False
AAAT TGTTCTATTTT
False
GTTTTA TGTTCTATTTT
False
TTTTT TGTTCTATTTT
False
GTAAA TGTTCTATTTT
False
AAATAA TGTTCTATTTT
False
GTGT TGTTCTATTTTTAAGCAAGTTGTCATCATTGAAATAGAGAACTCATTTTTTTGTTTTTTGTATTTCTTCTTTTTTTTGTATGCATTTTTATTTGTGAACTGTAA
False
AAAT TGTTCTATTTTTAAGCAAGTTGTCATCATTGAAATAGAGAACTCATTTTTTTGTTTTTTGTATTTCTTCTTTTTTTTGTATGCATTTTTATTTGTGAACTGTAA
True
GTTTTA TGTTCTATTTTTAAGCAAGTTGTCATCATTGAAATAGAGAACTCATTTTTTTGTTTTTTGTATTTCTTCTTTTTTTTGTATGCATTTTTATTTGTGAACTGTAA
False
TTTTT TGTTCTATTTTTAAGCAAGTTGTCATCATTGAAATAGAGAACTCATTTTTTTGTTTTTTGTATTTCTTCTTTTTTTTGTATGCATTTTTATTTGTGAACTGTAA
True
GTAAA TGTTCTATTTTTAAGCAAGTTGTCATCATTGAAATAGAGAACTCATTTTTTTGTTTTTTGTATTTCTTCTTTTTTTTGTATGCATTTTTATTTGTGAACTGTAA
False
AAATAA TGTTCTATTTTTAAGCAAGTTGTCATCATTGAAATAGAGAACTCATTTTTTTGTTTTTTGTATTTCTTCTTTTTTTTGTATGCATTTTTATTTGTGAACTGTAA
False
GTGT AATAGCGCCTAAGCAGCTTCCTTATGACAGGGTGTCGGCGATTATTTATCTCTGTGTTCTATTTT
True
AAAT AATAGCGCCTAAGCAGCTTCCTTATGACAGGGTGTCGGCGATTATTTATCTCTGTGTTCTATTTT
False
GTTTTA AATAGCGCCTAAGCAGCTTCCTTATGACAGGGTGTCGGCGATTATTTATCTCTGTGTTCTATTTT
False
TTTTT AATAGCGCCTAAGCAGCTTCCTTATGACAGGGTGTCGGCGATTATTTATCTCTGTGTTCTATTTT
False
GTAAA AATAGCGCCTAAGCAGCTTCCTTATGACAGGGTGTCGGCGATTATTTATCTCTGTGTTCTATTTT
False
AAATAA AATAGCGCCTAAGCAGCTTCCTTATGACAGGGTGTCGGCGATTATTTATCTCTGTGTTCTATTTT
False
GTGT TTTTATAAATAATTTACAGTTAAATCAAAATCACTTCACTACATATTGCTACTTCAAATAACTAATCTAACTGGAGTAGTGGTGTTAAACAGGAATCACGAGGCGAAGAAATCCAGTACGTGTAA
True
AAAT TTTTATAAATAATTTACAGTTAAATCAAAATCACTTCACTACATATTGCTACTTCAAATAACTAATCTAACTGGAGTAGTGGTGTTAAACAGGAATCACGAGGCGAAGAAATCCAGTACGTGTAA
True
GTTTTA TTTTATAAATAATTTACAGTTAAATCAAAATCACTTCACTACATATTGCTACTTCAAATAACTAATCTAACTGGAGTAGTGGTGTTAAACAGGAATCACGAGGCGAAGAAATCCAGTACGTGTAA
False
TTTTT TTTTATAAATAATTTACAGTTAAATCAAAATCACTTCACTACATATTGCTACTTCAAATAACTAATCTAACTGGAGTAGTGGTGTTAAACAGGAATCACGAGGCGAAGAAATCCAGTACGTGTAA
False
GTAAA TTTTATAAATAATTTACAGTTAAATCAAAATCACTTCACTACATATTGCTACTTCAAATAACTAATCTAACTGGAGTAGTGGTGTTAAACAGGAATCACGAGGCGAAGAAATCCAGTACGTGTAA
False
AAATAA TTTTATAAATAATTTACAGTTAAATCAAAATCACTTCACTACATATTGCTACTTCAAATAACTAATCTAACTGGAGTAGTGGTGTTAAACAGGAATCACGAGGCGAAGAAATCCAGTACGTGTAA
True
['GTGTTCTATTTTT', 'GTGTTCTATTTTTAAGCAAGTTGTCATCATTGAAATAGAGAACTCATTTTTTTGTTTTTTGTATTTCTTCTTTTTTTTGTATGCATTTTTATTTGTGAACTGTAAATTTTCATAACGTTCACAGAGTTTTAAATAA', 'AAATAGAGAACTCATTTTT', 'GTTTTATAAATAA']