Statistics

Problem Statement for "CyclicSequence"

Problem Statement

Given a string s of length n, one can generate an infinite cyclical sequence a0, a1, ... as follows. For each non-negative integer i, compute a zero-based index j as j = i%n. ai is equal to the j-th character of s.
You are given a String s. Return the shortest string which generates the same sequence as s.

Definition

Class:
CyclicSequence
Method:
minimalCycle
Parameters:
String
Returns:
String
Method signature:
String minimalCycle(String s)
(be sure your method is public)

Constraints

  • s will contain between 1 and 50 characters, inclusive.
  • Each character in s will be a digit ('0'-'9').

Examples

  1. "11111"

    Returns: "1"

    The sequence generated by this string is ai=1, which can be generated by the string "1".

  2. "234234234"

    Returns: "234"

  3. "567890"

    Returns: "567890"

  4. "0"

    Returns: "0"

  5. "11111111111111111111111111111111111111111111111112"

    Returns: "11111111111111111111111111111111111111111111111112"

  6. "12345678901234567890123451234567890123456789012345"

    Returns: "1234567890123456789012345"

  7. "11111111111111111111111111111111111111111111111111"

    Returns: "1"

  8. "12345678901234567890123456789012345678901234567890"

    Returns: "1234567890"

  9. "69192751820776919275182077"

    Returns: "6919275182077"

  10. "599515098983565865369975599515098983565865369975"

    Returns: "599515098983565865369975"

  11. "5664642638921029991723256646426389210299917232"

    Returns: "56646426389210299917232"

  12. "685136588296855514"

    Returns: "685136588296855514"

  13. "557533264655753326465575332646"

    Returns: "5575332646"

  14. "740851425137880158359740851425137880158359"

    Returns: "740851425137880158359"

  15. "328273972852860986662328273972852860986662"

    Returns: "328273972852860986662"

  16. "030300104734575769030300104734575769"

    Returns: "030300104734575769"

  17. "18242182421824218242182421824218242182421824218242"

    Returns: "18242"

  18. "8763514912487635149124"

    Returns: "87635149124"

  19. "0033000330003300033000330"

    Returns: "00330"

  20. "767373383258457673733832584576737338325845"

    Returns: "76737338325845"

  21. "425764358598"

    Returns: "425764358598"

  22. "0558466230386388988785"

    Returns: "0558466230386388988785"

  23. "02264779010226477901"

    Returns: "0226477901"

  24. "498127488262781498127488262781"

    Returns: "498127488262781"

  25. "237422374223742"

    Returns: "23742"

  26. "19798668131979866813"

    Returns: "1979866813"

  27. "503610956248815036109562488150361095624881"

    Returns: "50361095624881"

  28. "2284310410806409954222843104108064099542"

    Returns: "22843104108064099542"

  29. "6755548741354196867555487413541968"

    Returns: "67555487413541968"

  30. "56427564275642756427564275642756427"

    Returns: "56427"

  31. "951440415624951440415624951440415624951440415624"

    Returns: "951440415624"

  32. "957957957957957957957957957"

    Returns: "957"

  33. "903443903443903443903443"

    Returns: "903443"

  34. "99748549726546426299"

    Returns: "99748549726546426299"

  35. "608152608152608152"

    Returns: "608152"

  36. "52490507746525070819"

    Returns: "52490507746525070819"

  37. "578288681879"

    Returns: "578288681879"

  38. "491344913449134"

    Returns: "49134"

  39. "54966796479253356353328956658465144066283892980305"

    Returns: "54966796479253356353328956658465144066283892980305"

  40. "5778023695845886740237736499605341115893"

    Returns: "5778023695845886740237736499605341115893"

  41. "8187084368633918877705014920166585335456"

    Returns: "8187084368633918877705014920166585335456"

  42. "0660833985540578641566013195536"

    Returns: "0660833985540578641566013195536"

  43. "6965527976682128435418813362"

    Returns: "6965527976682128435418813362"

  44. "301442286680906"

    Returns: "301442286680906"

  45. "9623501593239576879527444700759"

    Returns: "9623501593239576879527444700759"

  46. "0452772446250101164583"

    Returns: "0452772446250101164583"

  47. "638105679461450630664364755057227228454098266034"

    Returns: "638105679461450630664364755057227228454098266034"

  48. "97395562285886532185282858429541211852009055"

    Returns: "97395562285886532185282858429541211852009055"

  49. "07"

    Returns: "07"

  50. "4930371943101223351881836748337157211072051094832"

    Returns: "4930371943101223351881836748337157211072051094832"

  51. "5497710595651139"

    Returns: "5497710595651139"

  52. "8504504004046879206603"

    Returns: "8504504004046879206603"

  53. "548265792722895392393947374238626328631237192335"

    Returns: "548265792722895392393947374238626328631237192335"

  54. "6693240936178669036"

    Returns: "6693240936178669036"

  55. "209"

    Returns: "209"

  56. "0936510960080674758819709928708"

    Returns: "0936510960080674758819709928708"

  57. "67670682444845080002651124298315675811471917911"

    Returns: "67670682444845080002651124298315675811471917911"

  58. "42571960179279667669656"

    Returns: "42571960179279667669656"

  59. "848191406895839190161570137"

    Returns: "848191406895839190161570137"

  60. "878340846427370626969610759343562230903"

    Returns: "878340846427370626969610759343562230903"

  61. "11699338276457166293530221163"

    Returns: "11699338276457166293530221163"

  62. "59932273"

    Returns: "59932273"

  63. "17769891925564864978734537961112613081449189651432"

    Returns: "17769891925564864978734537961112613081449189651432"

  64. "1267597"

    Returns: "1267597"

  65. "8981690086202"

    Returns: "8981690086202"

  66. "53522617"

    Returns: "53522617"

  67. "946377328865"

    Returns: "946377328865"

  68. "52478168694127669"

    Returns: "52478168694127669"

  69. "678967"

    Returns: "678967"

  70. "98989"

    Returns: "98989"

  71. "12341"

    Returns: "12341"

  72. "12312"

    Returns: "12312"

  73. "112"

    Returns: "112"

  74. "234234235"

    Returns: "234234235"

  75. "0101"

    Returns: "01"

  76. "234223434"

    Returns: "234223434"

  77. "567895"

    Returns: "567895"

  78. "11"

    Returns: "1"

  79. "2342342"

    Returns: "2342342"

  80. "01230123"

    Returns: "0123"

  81. "1122222222311222222223"

    Returns: "11222222223"

  82. "01010"

    Returns: "01010"

  83. "2342342342"

    Returns: "2342342342"


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: