Problem Statement
Shiki and Frederica are friends who like listening to songs together. They use a single cell phone to play the song, and each of them listens to it using one earphone.
For the purpose of this problem, a song is a string of lowercase English letters. Each letter represents one note of the song. The length of the song is always even.
Today the girls' music app became broken and something weird happened: each note of the song was only sent to one of the earphones.
Once the song was over, an even weirder thing happened: Shiki repeated the song she heard and Frederica realized that she has heard the exact same sequence of notes.
You are given a
If song can be the girls' favorite song, return "possible". Otherwise, return "impossible".
Definition
- Class:
- CrazyCrazy
- Method:
- possible
- Parameters:
- String
- Returns:
- String
- Method signature:
- String possible(String song)
- (be sure your method is public)
Constraints
- N will be between 2 and 40, inclusive.
- N will be even.
- Length of song will be exactly N.
- song will consist of lowercase English letters only ('a'-'z')
Examples
"aabb"
Returns: "possible"
One possibility is that the characters are sent as follows: 'a' to Shiki 'a' to Frederica 'b' to Shiki 'b' to Frederica This way, each of the girls will hear the string "ab".
"abba"
Returns: "impossible"
"verylazyverylazy"
Returns: "possible"
One possible scenario: Shiki hears the first eight characters and Frederica hears the rest.
"arqmpfvvbtltlhufznkldkurrazmgebfxeamrewn"
Returns: "impossible"
"aacfcfqqsmksimkoioeertbrtbhphnpnggddjjll"
Returns: "possible"
"ecbfjfhecdadfgeediedahabffagbidhjdhbaafe"
Returns: "impossible"
"eebehbckaebbhfcfaaehbfcfcckhbaakcffakehh"
Returns: "impossible"
"aabhfefhebmambbljjffjeeahlaejlfjleafhbbj"
Returns: "impossible"
"balcddeaagggedcggbgaddblaieccdilbcaeblcb"
Returns: "impossible"
"ejlbfafbagjdbdjlkeadbdfjlafddgbabjaekejl"
Returns: "impossible"
"tntlpdnlimpdimffrrhesahecgqsacbgqbjjkkoo"
Returns: "possible"
"llppbdhobnadhonatitijjffmrmreskgqeskcgqc"
Returns: "possible"
"nnpjpfqkdsjfmqkidsmitrthrhclclggaeaobeob"
Returns: "possible"
"jpjpdcgdckogkonnffbelqsbaelmqsihtamihtrr"
Returns: "possible"
"rjrjogmotgmlbdtinlkeqbdinkeqchcpfhaspfas"
Returns: "possible"
"jjkkiidnmcdnrbmcrbefepofpolltatagghhsqsq"
Returns: "possible"
"lglqksgqtdpmkstdfpembfeboonnjhcjhiarciar"
Returns: "possible"
"knknfcfgcgddqtspqetshapeohaommliljribjrb"
Returns: "possible"
"jijcicrrmmnnddaatteeffokokpbpbggslslqqhh"
Returns: "possible"
"eapeklsapdkfholsdijfhoqijqbbccnngmgtmtrr"
Returns: "possible"
"oontneteiqkiqfkrfrhcbshcbaspaldpjlgdjgmm"
Returns: "possible"
"agakfcgkqflcqbeopdlbrsetopdjhrsmintjhmin"
Returns: "possible"
"lgamlgasdmsdtotorrffihjncihjnbpecbpkqekq"
Returns: "possible"
"tltlhhjjbbnfnofieoieccaaqqddggkkmsmsrrpp"
Returns: "possible"
"nnekfekdfmjptiqdmjphotiqlhoblsgabsgcracr"
Returns: "possible"
"llmbjmksibhjkfsrihgfergenqnoqctoctaaddpp"
Returns: "possible"
"qgldeqpgfinlhdepcbfimnksthcbmksoratjoraj"
Returns: "possible"
"krkrlpqhmbtilgpqehambctigeajcnjofnofdsds"
Returns: "possible"
"bjbdjodonneetgctgmcmaqaqhlhrlsrfpisfpikk"
Returns: "possible"
"ffhhggjelkjaqelsktaqsticiconpdronmpdrmbb"
Returns: "possible"
"bciqbciqsjmsjkeonmkrgdtelonpragdhftlpahf"
Returns: "possible"
"ffjmjmpgdpgrqdnrkieqnokitceothchabablsls"
Returns: "possible"
"bbgkgaikfnhaioejfnhoejcrctqrtdqmdmllppss"
Returns: "possible"
"rdberhgdboehfgconmfcnmaaiissllqqjjktkptp"
Returns: "possible"
"keackeastcsntpnpiilrbjlofdrqgbhjofdmqghm"
Returns: "possible"
"hsmehsmebbfqladfgqtlaodpgjitonpjicncrrkk"
Returns: "possible"
"pspfsihhaannloklotrqrtkgqgdmdmfibebejjcc"
Returns: "impossible"
"lmkstngbkhtngblremerfifjoihjoasdcadpqcpq"
Returns: "impossible"
"kedmkjednismsjnoctqhrrotbqahfbapfiplcglg"
Returns: "impossible"
"ogqogpbdaacclhelfnihkrsdefnqmtikrjsbpmtj"
Returns: "impossible"
"bdbdggmsmjsjkfrtkfrthohceolcpliiaapneqnq"
Returns: "impossible"
"qdqfdbfibkiksgocaottjlnmhjlmnhargreeppcs"
Returns: "impossible"
"adhambdhmsbkksrreptlpflofqoqcgcigjitjnen"
Returns: "impossible"
"rbgrbegkqenjhkdintojhpdictopfsqlcfmslama"
Returns: "impossible"
"aagmqlqldfgdfnmtoojkircthjkircnhssbebpep"
Returns: "impossible"
"epepgajgajoohtschltbsqklbkmnmnffiirdrdcq"
Returns: "impossible"
"aaqjqsbbfsgefecgdjcdttirihormhomnplnplkk"
Returns: "impossible"
"ttjjiieennaglmoskpqldmospkqdacfrhgcbfrhb"
Returns: "impossible"
"aailifqmorqpmphhststkklgjconefgjdcnerdbb"
Returns: "impossible"
"nnbmkjaksjtadslpmdpbregreigoihohtlffcqcq"
Returns: "impossible"
"bbhiehnisenrsragddjfjfkkcgcatqtqooppmmll"
Returns: "impossible"
"mjkjbbggqpqoaallcchshsrriieefdnofmtdnpkt"
Returns: "impossible"
"eesgkdbbdksjgjiiaahhllrcttrcmonfmopnqfpq"
Returns: "impossible"
"nngqehjgkqechjkaclorplorbifbifddmmpsastt"
Returns: "impossible"
"bbqoqeforitlfrisdatspdajmpkgnjhmkglcnhec"
Returns: "impossible"
"abbababababababababaaabbabbabaaaaaababba"
Returns: "possible"
"aaaaaaaaaabbbbbbbbbbbbbbbbbbbbaaaaaaaaaa"
Returns: "possible"
"abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba"
Returns: "impossible"
"vvkkssldszsslmdfzsmfyyprprjj"
Returns: "possible"
"axayaxay"
Returns: "possible"
"aabaab"
Returns: "possible"
"abacadaeafagahaiajabacadaeafagahaiajxyxy"
Returns: "possible"
"bbcbbc"
Returns: "possible"
"abacabac"
Returns: "possible"
"aabcaabc"
Returns: "possible"
"aaaaaaaaaaaaaaaaaabcaaaaaaaaaaaaaaaaaabc"
Returns: "possible"
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac"
Returns: "impossible"
"aabbcebbce"
Returns: "possible"
"abacaabaca"
Returns: "possible"
"cdcedededbbdbedeeaedcabbdbeabdcabdffecec"
Returns: "possible"
"ddffaaaafefebbbabdeadfbefcbcffaeafeffcfc"
Returns: "possible"
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccb"
Returns: "impossible"
"kakbkkakbk"
Returns: "possible"
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab"
Returns: "impossible"
"aaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaab"
Returns: "possible"