Problem Statement
- Find the leftmost occurrence of two consecutive letters in S that are the same.
- If you found a pair of identical letters in the first step, delete those two letters from S.
- Find and erase "aa", producing the string "bccb".
- Find and erase "cc", producing the string "bb".
- Find and erase "bb", producing the empty string.
Definition
- Class:
- DoubleLetter
- Method:
- ableToSolve
- Parameters:
- String
- Returns:
- String
- Method signature:
- String ableToSolve(String S)
- (be sure your method is public)
Constraints
- S will contain between 1 and 50 characters.
- Each character in S will be a lowercase English letter ('a'-'z').
Examples
"aabccb"
Returns: "Possible"
"aabccbb"
Returns: "Impossible"
The process will terminate with a single 'b'.
"abcddcba"
Returns: "Possible"
"abcddcba" -> "abccba" -> "abba" -> "aa" -> "".
"abab"
Returns: "Impossible"
No two successive letters are the same, so we can't do any operation.
"aaaaaaaaaa"
Returns: "Possible"
"aababbabbaba"
Returns: "Impossible"
"zzxzxxzxxzzx"
Returns: "Possible"
"rxmxzwjmvuxdwvnzeuuyxnqerjyywwqeewsgsagdguwttyag"
Returns: "Impossible"
"jczacqxvqzcvockopujxkauxxxhhpx"
Returns: "Impossible"
"mccwrkydwkmyrd"
Returns: "Impossible"
"nmbtptlyvonbvyllqfhryqhmrplfyo"
Returns: "Impossible"
"bxwtqqbxsafiishwyaaxysabsftxhb"
Returns: "Impossible"
"yrlzlcdnjbzrncydjb"
Returns: "Impossible"
"rr"
Returns: "Possible"
"myrmyr"
Returns: "Impossible"
"ampmkaqvndpdkvqn"
Returns: "Impossible"
"dmtsdjglisjglhmkxgkclegglkcsgsktjbebthjtix"
Returns: "Impossible"
"xhdyfhotyxtovdktadfvvaykatvayoyyod"
Returns: "Impossible"
"pkdujjlussdanvkkjpanvlakaj"
Returns: "Impossible"
"xyzxdgedymvzkolbelmgovkb"
Returns: "Impossible"
"gqjowaognvsgwucjdsnuijdgxscpaipxsjvq"
Returns: "Impossible"
"zzetimfuzuhzhdewfidwerrnment"
Returns: "Impossible"
"zzvv"
Returns: "Possible"
"ss"
Returns: "Possible"
"zphzhrrp"
Returns: "Impossible"
"myjmnmrruuqmneoqgkekmyorvrjmgv"
Returns: "Impossible"
"dngexedyubyvykhvyzkghxubzn"
Returns: "Impossible"
"hvutuwnqddtquhnoeuznnzoewv"
Returns: "Impossible"
"hotmqhvsstmvqo"
Returns: "Impossible"
"wgbkmkliwndvvejnzedemkbqjlgnenzvvkdibqbd"
Returns: "Impossible"
"pyvpnfpmnyfrpzppbyerqvfxfxmzybnqeddn"
Returns: "Impossible"
"vutdtmvvihlmtdrecvhtlrceiwzhtuwthz"
Returns: "Impossible"
"tttatooa"
Returns: "Impossible"
"vtmedefvtgtrubjbybefjganmbndrjevawijwybvivbvtu"
Returns: "Impossible"
"ffzfdppucafacduzff"
Returns: "Impossible"
"hjwjwh"
Returns: "Impossible"
"bkrcddbcrjbxdujrznxlvknklzhhcjrjbdqkhqhvcu"
Returns: "Impossible"
"emkxilnedipbnqdeplxmnbndqsnxdsxken"
Returns: "Impossible"
"rfqeqbzrinbdnfqifqzmnndmef"
Returns: "Impossible"
"lplbflsyjpjsyfbl"
Returns: "Impossible"
"uuxduuwwerfubrruexzbdnbyntrxbetfyddzxe"
Returns: "Impossible"
"hhkhkinkknhi"
Returns: "Impossible"
"nacanc"
Returns: "Impossible"
"yhiiiiryhr"
Returns: "Impossible"
"xpkhbunuxobhbyimuiyouknbpimi"
Returns: "Impossible"
"bqatpsataaktpiftiktnlnwfkdqsnkiiablwdnta"
Returns: "Impossible"
"wkmomsbcjdfoqbgkrgcmpdcfskooolpmqgoroqeoggwqlkcgej"
Returns: "Impossible"
"jgjollllojgjgesoofnqbdmfbbfmdxcrpprcxbqnfooseg"
Returns: "Possible"
"kerxssxrekdfccfd"
Returns: "Possible"
"zvloolvzpnwwnptt"
Returns: "Possible"
"mzsdxxgddgdatmrrmapvvpaoohlqjjqlcchtazroorzszm"
Returns: "Possible"
"zrssrtjjtzaxwgzzgfqmmqfbbwxa"
Returns: "Possible"
"bsxqdfeggefgjjgdqzccwyrmkhhkmrywzxsb"
Returns: "Possible"
"vcaiuppuilsoeeoslnnacv"
Returns: "Possible"
"fibbgvhhvgif"
Returns: "Possible"
"zxqbbqxz"
Returns: "Possible"
"uxwzxnjxooxjnvvxzwxu"
Returns: "Possible"
"ibapovddvopabi"
Returns: "Possible"
"vychiitthcyvjnfnnfnj"
Returns: "Possible"
"clyffffylcdbuubdktqtnaantqlwwltrxllxrkmnsoosnm"
Returns: "Possible"
"mm"
Returns: "Possible"
"awommowa"
Returns: "Possible"
"weewxiwavjsmmyysjvawigzisswwizgx"
Returns: "Possible"
"iiauuahhofxxfjjoxttx"
Returns: "Possible"
"vkqqmzzmkvlcclqnvllvvlxddxaqqarrlvhzknyynkzhnq"
Returns: "Possible"
"arrabmmlvvlbtrrtccmmzkkiizwttw"
Returns: "Possible"
"nllnzxcclpbffbplxzduooudfmmxnnxfhsshlzzgjcgkkgcjgl"
Returns: "Possible"
"pljffsjjsssjllkarrakpplczzkbvvbkbbwbbwiicp"
Returns: "Possible"
"htvyhhyvth"
Returns: "Possible"
"hcvmrskpbggbpksrmvch"
Returns: "Possible"
"liafvatioswcwxcvvcxwcwsoitavfail"
Returns: "Possible"
"vafkjjjjkfaccvwwkqqkemmejjuizziufjjf"
Returns: "Possible"
"uu"
Returns: "Possible"
"okkoppxxbbyehheybwksskwb"
Returns: "Possible"
"nwbdnndeyyezwzjjzwzbwjjnrmgxxaggaggmhfxxfhmgmr"
Returns: "Possible"
"xlpplx"
Returns: "Possible"
"vjqqjzeezxxxscjjbzwwzbjjczbqdgvctgrssrgtcvgdqbzsxv"
Returns: "Possible"
"ukqzohhotjjtzqku"
Returns: "Possible"
"ljazsifhkriksdmkkmdskirkhfiszajl"
Returns: "Possible"
"vmlbddbbblmbsccsbv"
Returns: "Possible"
"rhlfaakkaafeggeleedkkfqqfdccmhhmoccooohr"
Returns: "Possible"
"ofuukicbbcddikfxbbxoxx"
Returns: "Possible"
"hiihehheuudllduu"
Returns: "Possible"
"dllcylfztfftzflrxuuxrqppaxrrxaqyclld"
Returns: "Possible"
"osjjhhso"
Returns: "Possible"
"vvrroeolnpptxxddugguttrrtnloeorrwlljjw"
Returns: "Possible"
"tzzt"
Returns: "Possible"
"nbbzzbbn"
Returns: "Possible"
"ecpvbjaabuuooxxxxtlejfppfjeltbarqubejjebuqrajbvpce"
Returns: "Possible"
"iisbyxccngfhhzppzfgnjpillipttlljvvcaacxybsii"
Returns: "Possible"
"mlgssgwxpsspxwgslgcerqecimmiceqrecglsglm"
Returns: "Possible"
"fvwlgzbwggwbmhhmwddwzglwvf"
Returns: "Possible"
"ftgziqqjjgeegqqiefmbysdeedsybmfyeeyezgtf"
Returns: "Possible"
"ywoyhlqltvvtlqlhyowy"
Returns: "Possible"
"bommohhaabbbsxwsswpttnnkkpwwxsrrhhsssxxfzhhzfffsvv"
Returns: "Possible"
"gxjjxjbgcttcgbjgjixxuddeeuijdkkd"
Returns: "Possible"
"izsyrvwbsxlwgvwdqwellewqdwvgwlxsbwvryszi"
Returns: "Possible"
"a"
Returns: "Impossible"
"aba"
Returns: "Impossible"
"abc"
Returns: "Impossible"
"abbc"
Returns: "Impossible"
"aa"
Returns: "Possible"
"abcdefghijklmnoonmlkjihgfedcba"
Returns: "Possible"
"aaa"
Returns: "Impossible"
"ab"
Returns: "Impossible"
"aacdfdf"
Returns: "Impossible"