Problem Statement
You have been hired by researchers at TopBiologist to help them with some programming tasks. The researchers have found a sequence of uppercase letters, which is given to you in the
A substring can be obtained from sequence by deleting some (possibly zero) characters from the beginning or end. For example, suppose sequence is the string "TOPBOATER". Then "TOP", "PBOA", "T", and "AT" are some examples of substrings of sequence. Of these examples, "T" and "AT" are DNA sequences. The answer to the problem would be 2 because "AT" is the longest such sequence and its length is 2.
Please find and return the length of the longest DNA sequence that is a substring of sequence.
Definition
- Class:
- DNASequence
- Method:
- longestDNASequence
- Parameters:
- String
- Returns:
- int
- Method signature:
- int longestDNASequence(String sequence)
- (be sure your method is public)
Constraints
- sequence will contain between 1 and 50 characters, inclusive.
- Each character of sequence will be an upper-case English letter ('A'-'Z').
Examples
"TOPBOATER"
Returns: 2
This is the example from the problem statement.
"SUSHI"
Returns: 0
None of the substrings of "SUSHI" are DNA sequences, so the answer is 0.
"GATTACA"
Returns: 7
"GOODLUCK"
Returns: 1
"VVZWKCSIQEGANULDLZESHUYHUQGRKUMFCGTATGOHMLKBIRCA"
Returns: 6
"A"
Returns: 1
"Z"
Returns: 0
"XTYQH"
Returns: 1
"KGGACGTKKAGGGKKGTCCG"
Returns: 6
"TSYWWQYEFCXBNAAPEXIQOSPUUQO"
Returns: 2
"CCAKGCKCTACCAATCKKKGCCGKKCTTA"
Returns: 9
"KMBWACFAMFARYR"
Returns: 2
"TTGKAACATKTCTATTAAKKKKCKTTGTCGCKGKTTTAG"
Returns: 8
"IBKHZPBXALYQELSEWLWQHIBIQZCUTGOPUJOLGBSAKQNDPQFABR"
Returns: 2
"GKKKKCGGKGCKTGCGKKKCTTKAKGGTKTAKCTCTCCACCA"
Returns: 10
"JXTDGCRBLWALCADCTJEFFZELZZQLYXGZKZOFSASZDCBSMOYJOD"
Returns: 2
"TKCACTCKKAKAGGTAAAGKKGGACATCCTTTTKCGKKTKGCGACTATGG"
Returns: 12
"YYIRXGGDYWZHQVEOMSDVFKELRRGQYODHNFBUXQBVHNUJCWZTLE"
Returns: 2
"GACCCAAGKCCCGTTCKTGGGKTGKKTAAAKCKAGTGGGGGACKTTACGA"
Returns: 10
"JJQSUNGBVNTTLHDGPLLSMLCQYGUGKWMOMLXVXCKUMWKUQCONGZ"
Returns: 2
"CKTTTTGTTTTKAATKAGGGCTGKTCCAKTGATCCCGTTCCKKCGCGCGT"
Returns: 12
"LRPXVLTWKHQNBZYQNFYIJYOQKEVGHQUBYEQUDNLBYUBPHZZNVZ"
Returns: 1
"CTAGKAKAKKAKTTGGCAKTGAATAGTAGCTAGTCAACCGTAGACTAGAA"
Returns: 31
"FLKIUKZYSCYWHNVDGBFGDZALARZLBBAMSPALHPIMBAMGTARZOT"
Returns: 3
"KTACCCGCGCGTKCGGACGKAATTAKTTTTCKKKTATTACCKCATKGKTT"
Returns: 11
"BWYWXNEKKEZOXRMCHJCOHTNTPJWWGOSGOFXKSLHNZROQRLKXHY"
Returns: 1
"CAGCTKCKGAGCAGGCKCAAAGTATGGCGTKATATGCGAACATTCGGATK"
Returns: 18
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
Returns: 50
"CTCTAACAGATGAAGTTTTAAATGGTAGATACTCAATGGGAGCCTACGCG"
Returns: 50
"NEKAEAEMMAANDESMMEMESMSEKEMEESSMMNNMMKMEMMSMMKEMNS"
Returns: 2
"XA"
Returns: 1
"TTASDFASDFGG"
Returns: 3
"AAXA"
Returns: 2
"AAA"
Returns: 3
"AG"
Returns: 2
"AAAAAAAAAAAAA"
Returns: 13
"BBCCC"
Returns: 3
"ACTG"
Returns: 4
"ZA"
Returns: 1
"ATFFFATT"
Returns: 3
"CCADAA"
Returns: 3
"C"
Returns: 1