Problem Statement
Alien Fred wants to destroy the Earth, but he forgot the password that activates the planet destroyer.
You are given a
Return the number of different passwords Fred needs to try.
Definition
- Class:
- AlienAndPassword
- Method:
- getNumber
- Parameters:
- String
- Returns:
- int
- Method signature:
- int getNumber(String S)
- (be sure your method is public)
Constraints
- S will contain between 1 and 50 characters, inclusive.
- Each character in S will be an uppercase English letter ('A'-'Z').
Examples
"A"
Returns: 1
In this case, the only password Fred needs to try is an empty string.
"ABA"
Returns: 3
The following three passwords are possible in this case: "BA", "AA", "AB".
"AABACCCCABAA"
Returns: 7
"AGAAGAHHHHFTQLLAPUURQQRRRUFJJSBSZVJZZZ"
Returns: 26
"ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"
Returns: 1
Regardless of which character we erase, we will always obtain the same string. Thus there is only one possible password: the string that consists of 49 'Z's.
"HQ"
Returns: 2
"H"
Returns: 1
"MEAYL"
Returns: 5
"LFDXFI"
Returns: 6
"CVSCXGGB"
Returns: 7
"KFNQDUXWFNFOZVSRT"
Returns: 17
"JPREPGGXRPNRVYS"
Returns: 14
"MWCYSYYCQPEVIKEFFMZNIMKKASVWSRENZKYC"
Returns: 33
"FXTLSGYPSFADPOOEFXZBCOEJUVPVAB"
Returns: 29
"YGP"
Returns: 3
"EYLFPBNPLJVRVIPYAMYEHWQNQRQPMXUJJLOOVAOWUXWHMSNCBX"
Returns: 48
"OKSFZKVATXDKNLYJYHFIXJSWNKKUFNUXXZRZBMNMGQOOKETLYH"
Returns: 47
"KOAUGZQRCDDIUTEIOJWAYYZPVSCMPSAJLFVGUBFAAOVLZYLNTR"
Returns: 47
"DCPWSRTESJWHDIZCOBZCNFWLQIJTVDWVXHRCBLDVGYLWGBUSBM"
Returns: 50
"ORXTLHCSMPXOHGMGNKEUFDXOTOGBGXPEYANFETCUKEPZSHKLJU"
Returns: 50
"EEECEDACCD"
Returns: 7
"DADDCACADC"
Returns: 9
"ECADEDCBBD"
Returns: 9
"ADABCCCBEA"
Returns: 8
"ADEAAADBAB"
Returns: 8
"HHLHLLHILK"
Returns: 8
"DFFDGFGGEC"
Returns: 8
"IHJHHIJKKL"
Returns: 8
"KJLLNJLNMM"
Returns: 8
"CDBCBAAEAC"
Returns: 9
"RRRRSTQQUTTQRSUQTTTQSSQTUTQSUS"
Returns: 22
"KJIILLMIIJMIJKILIJJJKJKKJMJJKK"
Returns: 22
"NMNPQQMQONMPOQQQOOQOPOPNMOPMPP"
Returns: 25
"DDCGCDCDGCFCFGDFGEGDFDCEFDCFDC"
Returns: 29
"RQRTSRSQSPSPRSPRRRPTQPSPPRTPPS"
Returns: 26
"OSROSQOSPRSORQQSPPQQPSORSPQORRQSPQSORQSO"
Returns: 36
"GIIKJHJHJGHKGKIKJHKJIGGGKJIJIKJHKJGGIHJK"
Returns: 36
"CGGCCCFFCDFEEEECFDFFECGCCFFEFFEGFGDFEFCD"
Returns: 29
"VTSWVSSVUTVSTSVVWWVVWUTWSVTTSSTWTWSWUSVU"
Returns: 34
"SRRTUUQRSQTQRRRUURSRTSQQRQRQRSRQQSUTTRST"
Returns: 32
"BABABAAABBBAAAAAABBABABBABBAABAAABBBABABBBBBAABBAB"
Returns: 27
"ABABAABBBBBBBAABABBBBABAAAABAAAABBBBBAABABAABBABAB"
Returns: 26
"AAAABBABBBBBABABAABBAAABBABABBAAAAABBAAABABABBABAB"
Returns: 28
"ABBAAAABBBAAAABAAABAAABAABABABAAABABBABAABAAAABAAA"
Returns: 27
"BBBAABAAAAABAAAABBABABABABAABBABAAABABBABAAAAAABAB"
Returns: 29
"BBBAAABABABABBABABBABABABAAABBBBBABBAAAABBABAAAAAA"
Returns: 28
"YZZZZZZZZZYYZZYYZYZYZZZZYYYZYYYYYZYYYZZYYYYZYYYZYZ"
Returns: 22
"DDCCDCDCCDCCCDCDCDDCCCDCDCCCDCDCCCDDDCDCDCDCCCCDCC"
Returns: 32
"PPQQQPQPPQPQPQPQQPQQPQPQPQQQQPPQPQPPQQQQQQPPPPQPQQ"
Returns: 30
"UVUVVVVVVVUUUUUVUUVUVUVUUUUUUVUVVVUVVUUUUVVUVUVVVV"
Returns: 24
"OLLTTNOLRQLUSNNTNUPPTNSNQTPSOUQMULNTOMPOMLPLSULTMP"
Returns: 46
"TPNSMNMLKOKRPTKPLMKTSTLRNNKRQQKMSTSTTTOMKSRSRNKRQO"
Returns: 46
"VNSMPPSOONQPOSMRQVSMUOTQMTSMNOVPURNRSSUUVUTMTVNRUS"
Returns: 46
"HIGLFGMHLIEGFLEJHJKKMJHEMFJGEIMKDFJEKJFIGHDKIIGELL"
Returns: 47
"EKIDIMDMGIHFKFJKFFDEEKIMELEKLJJMMFJJILHDGKLGEEFIKJ"
Returns: 44
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
Returns: 1
"AAAAAAB"
Returns: 2
"DJSADJSAIJDISAJDISJJIASJFI"
Returns: 25
"AAAAAAA"
Returns: 1
"AB"
Returns: 2
"AABBCC"
Returns: 3
"AA"
Returns: 1
"AAAA"
Returns: 1
"ABCDEF"
Returns: 6