Statistics

Problem Statement for "DNASequence"

Problem Statement

For the purposes of this problem, a DNA sequence is a string consisting of the letters A, C, G, and T.

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 String sequence. They have asked you to write a program which find the length of the longest DNA sequence that is a substring of sequence.

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

  1. "TOPBOATER"

    Returns: 2

    This is the example from the problem statement.

  2. "SUSHI"

    Returns: 0

    None of the substrings of "SUSHI" are DNA sequences, so the answer is 0.

  3. "GATTACA"

    Returns: 7

  4. "GOODLUCK"

    Returns: 1

  5. "VVZWKCSIQEGANULDLZESHUYHUQGRKUMFCGTATGOHMLKBIRCA"

    Returns: 6

  6. "A"

    Returns: 1

  7. "Z"

    Returns: 0

  8. "XTYQH"

    Returns: 1

  9. "KGGACGTKKAGGGKKGTCCG"

    Returns: 6

  10. "TSYWWQYEFCXBNAAPEXIQOSPUUQO"

    Returns: 2

  11. "CCAKGCKCTACCAATCKKKGCCGKKCTTA"

    Returns: 9

  12. "KMBWACFAMFARYR"

    Returns: 2

  13. "TTGKAACATKTCTATTAAKKKKCKTTGTCGCKGKTTTAG"

    Returns: 8

  14. "IBKHZPBXALYQELSEWLWQHIBIQZCUTGOPUJOLGBSAKQNDPQFABR"

    Returns: 2

  15. "GKKKKCGGKGCKTGCGKKKCTTKAKGGTKTAKCTCTCCACCA"

    Returns: 10

  16. "JXTDGCRBLWALCADCTJEFFZELZZQLYXGZKZOFSASZDCBSMOYJOD"

    Returns: 2

  17. "TKCACTCKKAKAGGTAAAGKKGGACATCCTTTTKCGKKTKGCGACTATGG"

    Returns: 12

  18. "YYIRXGGDYWZHQVEOMSDVFKELRRGQYODHNFBUXQBVHNUJCWZTLE"

    Returns: 2

  19. "GACCCAAGKCCCGTTCKTGGGKTGKKTAAAKCKAGTGGGGGACKTTACGA"

    Returns: 10

  20. "JJQSUNGBVNTTLHDGPLLSMLCQYGUGKWMOMLXVXCKUMWKUQCONGZ"

    Returns: 2

  21. "CKTTTTGTTTTKAATKAGGGCTGKTCCAKTGATCCCGTTCCKKCGCGCGT"

    Returns: 12

  22. "LRPXVLTWKHQNBZYQNFYIJYOQKEVGHQUBYEQUDNLBYUBPHZZNVZ"

    Returns: 1

  23. "CTAGKAKAKKAKTTGGCAKTGAATAGTAGCTAGTCAACCGTAGACTAGAA"

    Returns: 31

  24. "FLKIUKZYSCYWHNVDGBFGDZALARZLBBAMSPALHPIMBAMGTARZOT"

    Returns: 3

  25. "KTACCCGCGCGTKCGGACGKAATTAKTTTTCKKKTATTACCKCATKGKTT"

    Returns: 11

  26. "BWYWXNEKKEZOXRMCHJCOHTNTPJWWGOSGOFXKSLHNZROQRLKXHY"

    Returns: 1

  27. "CAGCTKCKGAGCAGGCKCAAAGTATGGCGTKATATGCGAACATTCGGATK"

    Returns: 18

  28. "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"

    Returns: 50

  29. "CTCTAACAGATGAAGTTTTAAATGGTAGATACTCAATGGGAGCCTACGCG"

    Returns: 50

  30. "NEKAEAEMMAANDESMMEMESMSEKEMEESSMMNNMMKMEMMSMMKEMNS"

    Returns: 2

  31. "XA"

    Returns: 1

  32. "TTASDFASDFGG"

    Returns: 3

  33. "AAXA"

    Returns: 2

  34. "AAA"

    Returns: 3

  35. "AG"

    Returns: 2

  36. "AAAAAAAAAAAAA"

    Returns: 13

  37. "BBCCC"

    Returns: 3

  38. "ACTG"

    Returns: 4

  39. "ZA"

    Returns: 1

  40. "ATFFFATT"

    Returns: 3

  41. "CCADAA"

    Returns: 3

  42. "C"

    Returns: 1


This problem statement is the exclusive and proprietary property of TopCoder, Inc. Any unauthorized use or reproduction of this information without the prior written consent of TopCoder, Inc. is strictly prohibited. (c)2024, TopCoder, Inc. All rights reserved.
This problem was used for: