Statistics

Problem Statement for "SquareCypher"

Problem Statement

Square cypher is very simple and easy to decrypt. It encrypts a message s=s0s1...sn-1 in the following way: all characters situated on square positions (0, 1, 4, 9, 16...) are moved to the front of the message. The relative order of the moved characters remains the same. For example, the message "thisisacontest" will be encrypted as "thinissacotest".

You are given a String cryptogram. Decrypt it and return the result.

Definition

Class:
SquareCypher
Method:
decrypt
Parameters:
String
Returns:
String
Method signature:
String decrypt(String cryptogram)
(be sure your method is public)

Constraints

  • cryptogram will contain between 1 and 50 characters, inclusive.
  • cryptogram will contain only lowercase letters ('a'..'z').

Examples

  1. "thinissacotest"

    Returns: "thisisacontest"

    This test is from the statement.

  2. "thisisacontest"

    Returns: "thisiaconstest"

  3. "heoll"

    Returns: "hello"

    Only the letter 'o' was moved.

  4. "test"

    Returns: "test"

    Obviously, short messages (not longer than 4 characters) are not change after the encryption.

  5. "b"

    Returns: "b"

  6. "rf"

    Returns: "rf"

  7. "ssp"

    Returns: "ssp"

  8. "qlkd"

    Returns: "qlkd"

  9. "ngkki"

    Returns: "ngkik"

  10. "gigifi"

    Returns: "giifgi"

  11. "ctnlbda"

    Returns: "ctlbnda"

  12. "cthhjboo"

    Returns: "cthjhboo"

  13. "jdkmilfce"

    Returns: "jdmiklfce"

  14. "yajuxiejpw"

    Returns: "yaxijejpwu"

  15. "fabdcadcdff"

    Returns: "facabdcdfdf"

  16. "oclpccjibihl"

    Returns: "occcljibiphl"

  17. "hemaiepudunjt"

    Returns: "heiempuduanjt"

  18. "cbedcdadeaabfb"

    Returns: "cbcdeadeadabfb"

  19. "hldbpilfkkcoeea"

    Returns: "hlpidlfkkbcoeea"

  20. "kccdjcbjckjajegf"

    Returns: "kcjccbjckdjajegf"

  21. "aaaaaaaaaaaaaaaaa"

    Returns: "aaaaaaaaaaaaaaaaa"

  22. "mmqnecircotkjusabi"

    Returns: "mmciqrcotnkjusabei"

  23. "aaaaaaaaaaaaaaaaaaa"

    Returns: "aaaaaaaaaaaaaaaaaaa"

  24. "idgjxrabrpllelejibem"

    Returns: "idragbrpljlelejixbem"

  25. "gysobbqpowlmyivjybrjo"

    Returns: "gybqspowlomyivjybbrjo"

  26. "xclbocvlzedvcznvoptuqm"

    Returns: "xccvllzedbvcznvooptuqm"

  27. "bbaaeabfebaeeabedfdbada"

    Returns: "bbabafebaaeeabedefdbada"

  28. "cfilnlgelaniaejllbolilib"

    Returns: "cflgielanliaejllnbolilib"

  29. "htosmqpejulnhpbqdepgjnlkt"

    Returns: "htqpoejulsnhpbqdmepgjnlkt"

  30. "aaaaaaaaaaaaaaaaaaaaaaaaaa"

    Returns: "aaaaaaaaaaaaaaaaaaaaaaaaaa"

  31. "jkbkmjojaljfdminkocdnceajhc"

    Returns: "jkojbaljfkdminkomcdnceajhjc"

  32. "bbbafcfccfbfffbadbefeaceccfc"

    Returns: "bbfcbcfbfaffbadbfefeacecccfc"

  33. "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

    Returns: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

  34. "hodkleholhpfccmejlcdfjfchgekfg"

    Returns: "hohodlhpfkccmejllcdfjfchgeekfg"

  35. "fdbdaccbaeafeabcaecabfdebcfeedc"

    Returns: "fdcbbaeafdeabcaeacabfdebccfeedc"

  36. "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

    Returns: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

  37. "lnhfffpdmfbbahgihemboipjkfkmeojff"

    Returns: "lnpdhmfbbfahgihefmboipjkffkmeojff"

  38. "fffppgfaaepemnlpaolopcnacelnjapmlc"

    Returns: "fffafaepepmnlpaoplopcnaceglnjapmlc"

  39. "fltjcpzgxwkwinobrshvlftsubghjkwsfzm"

    Returns: "flzgtxwkwjinobrschvlftsubpghjkwsfzm"

  40. "iodrcuotaynnysfzxhvnrlqmqxujdmvqmoqc"

    Returns: "iootdaynnrysfzxhcvnrlqmqxuujdmvqmoqc"

  41. "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

    Returns: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

  42. "eemnhsofblpmetbhmkioicdepotajnmssiopbh"

    Returns: "eefbmlpmentbhmkihoicdepotsajnmssiopboh"

  43. "eeddbccfddbbeeceaedfefdcefddccbfeedcbcd"

    Returns: "eefdddbbedeceaedbfefdcefdcdccbfeedcbccd"

  44. "aadcabbcbabbafceadfcdddaaeefbddfbfeebbfa"

    Returns: "aacbdabbacfceadfacdddaaeebfbddfbfeebbbfa"

  45. "niqlhdngcsbdkejjfflbiqqtleuasggboqtjshqfh"

    Returns: "nigcqsbdklejjfflhbiqqtleudasggboqtjsnhqfh"

  46. "aechfdeehcbdbbkdddekfjaeifcadkhhhacgcedicj"

    Returns: "aeehccbdbhbkdddefkfjaeifcdadkhhhacgceedicj"

  47. "cbacddeebdbdaafadbcbacbaceefbafdfcebeeaecfc"

    Returns: "cbebadbdacafadbcdbacbaceedfbafdfcebeeeaecfc"

  48. "hhfdngbpjbebpelnadhdijmemikdkbfibfblbnakpncc"

    Returns: "hhpjfbebpdelnadhndijmemikgdkbfibfblbbnakpncc"

  49. "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

    Returns: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

  50. "bcffgngdncoaleigjmijdfdgjhacjdmlojaiihlchkaeip"

    Returns: "bcdnfcoalfeigjmigjdfdgjhancjdmlojaiighlchkaeip"

  51. "bgmigdbtapkmjlmcgpbkahiqrtaeudmclkunncdcniqquns"

    Returns: "bgtampkmjilmcgpbgkahiqrtadeudmclkunnbcdcniqquns"

  52. "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

    Returns: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

  53. "rofgqgoejdltckbcmtbqpfecfljdfisjlkeoulcpsltrlacrt"

    Returns: "roejfdltcgkbcmtbqqpfecfljgdfisjlkeouolcpsltrlacrt"

  54. "hssssljtchagnfsgsnqmkpoifpmgpesifpjasibsifrhmhfckc"

    Returns: "hschsagnfssgsnqmskpoifpmglpesifpjasijbsifrhmhfckct"

  55. "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

    Returns: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

  56. "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

    Returns: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

  57. "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

    Returns: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

  58. "abbaaaabbbbbbbbbbaababbbbabbbbaaababbabbbbbbabbb"

    Returns: "abbbbbbbbabbbbaaababbbbababbbaaababbaabbbbbbabbb"

  59. "bbbababbbabbabbabbbbbabbaabbbababaabbabbababaaaba"

    Returns: "bbbbbabbaabbabbbbbbabbaababbababaabbbabbababaaaba"

  60. "bbbbaaabababbbbbaabababaaabababbbbaabaabaaabbaaaaa"

    Returns: "bbabbabbbbbbaabaababaaabaababbbbaabaaabaaabbaaaaab"

  61. "t"

    Returns: "t"

  62. "abcdefghi"

    Returns: "abdecfghi"

  63. "qwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvb"

    Returns: "qwopeasdfrghjklztxcvbnmqwyertyuiopasudfghjklzxcvbi"

  64. "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwx"

    Returns: "abijcklmndopqrsteuvwxyzabfcdefghijklgmnopqrstuvwxh"

  65. "a"

    Returns: "a"

  66. "qwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcv"

    Returns: "qwioepasdrfghjkltzxcvbnmqywertyuiopausdfghjklzxcv"


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: