Problem Statement
Recently, some very old messages were discovered. Unfortunately, some of the letters are no longer legible. You are given a
You are given two
Definition
- Class:
- TwoWords
- Method:
- howMany
- Parameters:
- String, String, String
- Returns:
- String
- Method signature:
- String howMany(String statement, String word1, String word2)
- (be sure your method is public)
Constraints
- statement, word1 and word2 will each contain between 1 and 50 characters, inclusive.
- statement, word1 and word2 will each contain only lowercase letters ('a'-'z') and question marks ('?').
Examples
"yello??taxi"
"yellow"
"taxi"
Returns: "both"
The original message could have been "yellowataxi". Therefore, both words can exist without overlapping.
"?ellowtaxi"
"yell"
"l?w"
Returns: "one"
If the statement was interpreted as "yellowtaxi", word1 could exist. If word2 was interpreted as "low", it could exist. However, only one of them can exist without overlapping.
"tha?isunbelievable"
"han?y"
"?th?"
Returns: "none"
For all interpretations of the illegible characters, neither word can exist.
"hellohowareyou"
"how"
"are"
Returns: "both"
"thebigbrown?fox??????over?thelazy?dog"
"big"
"brown"
Returns: "both"
"thebigbrown?fox??????over?thelazy?dog"
"jum"
"ped"
Returns: "both"
"thebigbrown?fox??????over?thelazy?dog"
"jump"
"ped"
Returns: "one"
"b?cbab"
"baa?bb??c?"
"b?c?"
Returns: "one"
"secondfirst"
"second"
"first"
Returns: "both"
word2 can come before word1.
"me?sa?e"
"?ceage"
"essay"
Returns: "one"
"?"
"??"
"???"
Returns: "none"
"hello"
"h?"
"ll?"
Returns: "both"
"sosdksksdflkjosslkfjsdoisdflskdljljslkdfjsldkjlsdk"
"sos"
"lskdljljslkdfjsldkjlsdk"
Returns: "both"
"sdaspprkosoijwewlkosijflwkmwepospckkmgjjosiefkmnas"
"????????????????????????"
"????????????????????????"
Returns: "both"
"aaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaa"
"aaaaaaaaaaaaa??aaaaaaaa"
"b?????????????????????????"
Returns: "one"
"aaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaa"
"aaaaaaaaaaaaaaaaaaaaaaa"
"b???????????????a????"
Returns: "none"
"vhbu?ita?b?o?kna?hxf?lf?hortoj?ljfxonlodm?rkaxl"
"hbufi?a?biog?nadh?fwlf?hor"
"fhhort?je?jfx??l?dm?rkax"
Returns: "one"
"j?i?ifvc?jhlseb?me??wn??pkxxgnuh?fujkslgd?soptg"
"sebqme?b???jpkxxg"
"?ajpkxxgnuhjf??ksl?dlsoptg"
Returns: "one"
"fbq?qnb?rg?bs?plf?fxfluohark?enw?vr"
"o?lf?fxfluoha"
"bgrg?bso?l?hfxf"
Returns: "one"
"tc?mp???jqqwtds?uvwdw?hmmtmvq?tdlh"
"t?t?po?ljqqwtdsk?vw"
"?dwvhmmtmvq???lh"
Returns: "one"
"??wk?vqq?ffoo?dtbfu?fde?waui??wvguxx?ppfnumt??pc"
"omd??fu?fdes?auif?wvgu"
"deswau?fj?vg??x?ppfnumtb"
Returns: "one"
"aerdmgl?k?fcvul?tskono?hkqg??on"
"lg?afcv??btskon"
"k?f??ul?tskonoch"
Returns: "one"
"pbbeh?djljxrq?msid?uooso?g?a?esmvt?u?mgl?vu?si"
"olg?avesm?ti?hmgln?uf?ip"
"?d?uoosolgj"
Returns: "one"
"vimlcb?cc?lsna?f?uvisbvtk?aa?vgpft"
"fsuv?s??tkwaa?vgpft"
"??fsuvisbvt"
Returns: "one"
"sm?f??bf?ighjumh?kchbgi?gdav?ucaaufx?xvah"
"h?kchbging?av?uc?aufxf"
"chb?i?gdav?ucaaufxf?va"
Returns: "one"
"?rdkx?dec?jxbrvvhhc???ldl?ckbu"
"rdkxs??cl"
"s?ecljxbr??hhc?rul"
Returns: "one"
"kupljrwooulgf??jni??o?b?a???nmgxivk?ob?untcs"
"woou?g?lpjn?xx"
"lp?nixxos?tass?nm?xivk?obiu"
Returns: "one"
"?jtee??bj??pwlkthfffj?eosifbgl"
"ukb??hpwl"
"th?f?jve"
Returns: "both"
"bmnwntk?dx?pip??k?vu?sbwxkdafvgwkt"
"ip?dkc?uosbw??daf"
"ndk?vuos?wx"
Returns: "one"
"gjh????v?dlcubvstksj?jkwo?d?tne?ollmkebqh?stghf"
"jhswh??odlcu?vst"
"hb?odlcubvst?s?djk?ocdo"
Returns: "one"
"ewjwdmgcsmngh?ifionug?qt???ndbr?x?g?hem"
"s?nghbif??nu"
"cpn?d?rix?gsh"
Returns: "both"
"dee?mvn?q?ql?k??tsr?iwf???ekcesfawtntijdo"
"eevmvn??n?lekkr?sr"
"qnql?kkr?srni?fkfgekc?sfa"
Returns: "one"
"?d?fsl?w?ma?dxxnborawt?sbuakfxj?csf"
"c?if?ljwx"
"man?xx??orawtss"
Returns: "both"
"?wjxtvubhjucc?u??ptsc??pa?iiahp"
"?ub?jucckut?ptsci"
"cku?fpt?cit?au"
Returns: "one"
"u?kd?h?qxjqjwco?gwq?lkaco?v?ouvk?h?xh?pw"
"rouvk?hoxh?pwo"
"mh?qx?qjwcofgwq"
Returns: "one"
"tmmdmg?couggbvig??w?ue?lv?kujqvfvkaj?mdoij???vp"
"j?v?vkaji?doi"
"vi??rw??e?lvfkujqvfvkaji"
Returns: "one"
"qh?citbodn?exs?kwbghlr??qu?mgv??et"
"x?c?wbgh"
"sckwbghlrb?q?x?gvgw"
Returns: "one"
"d?no?r?elhtknse?tu??lhdu?tapqlal??bhgwdjvw"
"dtapqlalnnb???djvw"
"dtap?laln??hgwdjv"
Returns: "one"
"wq??bbkexsnan?m?pjjmav?brxbpko"
"bbk?xs?an?mb?jjm"
"xsnansmbpj?m??ob"
Returns: "one"
"jgq?p???glxj?lkx?gvoq?khftmgn?jwpr?wam?gpth"
"q???ftmgnij?prewa"
"ig?lxjf??xe?voqfk"
Returns: "one"
"oxt?b??kmrf?mlx?gtqqwu?xaqucsm"
"xaq?csm"
"x?k??dkmrflml?ng"
Returns: "both"
"unvwi?c??bmctkbcjwumhfewb?vt?s?ghr??sw?px"
"jwum?f?wbv??rsugh?ehswi"
"bmctkb?j?um"
Returns: "one"
"prc?q?hhhithoton?bxgpf??u?qvdvgk"
"i?h?tonqbx?pf"
"ton??xgpft?um"
Returns: "one"
"vfsimtmdka?hl?mni??umb?xlvpkp?wnui?beb?obo"
"l?n?xt?mbpxlvpkpx"
"?m?kachll?n?xtumb"
Returns: "one"
"sn?mhxfm?dt?qnpu?cpt?wnhhmoe?whsln?kmeoc?jw?og"
"c?ts?nhhmo?iw"
"mhx?mwdt?qn?uj?pt?wnhhmoeiwh"
Returns: "one"
"uexn??m???mid?ctrfh?pwdlmsnpvodjs"
"xne?ma?am?dlctr"
"??pwdlm?npvodjs"
Returns: "both"
"?gowaenext?so?ivbrmx?g?r?nmtlo?puf??ccrr"
"vbrmxkg?rd?mtlopp??nncc"
"o?a?nextssoj?vb?mxkg"
Returns: "one"
"p?h?gw?ue?jh?rxiul?o?tgnqai?eqrtv?pexb??trcokr"
"?aiheqr?vbpex"
"p?x?qttrcok"
Returns: "one"
"gv??rpr??ftcjkxrkomi?pbeelfuhjcnwxr"
"if?bee?fu"
"gv??rpr?eftcjk"
Returns: "both"
"?e?ivao??rij?bcedvx?apiuecegq?b?psa?spf?iohxp"
"?bced?xkapi?e?egqtba"
"?dvxka?iuec?gq"
Returns: "one"
"kfp?snhhanwqrvtw?nnvnwes??fns?f??mk?c?xs"
"?sglfn??fffm"
"nwqrvtwvn?v?we???fns"
Returns: "one"
"?xemc?r?vtpvdi?s??vmm?iaeoldfvv"
"emck??vtpvd?hs?wv"
"?ihs?wvmm"
Returns: "one"
"c???qh?s?dou??onf?ps?f?aanucullp?awpasbfvqsc"
"on?upsl?vaa"
"ump?nfu?s?fvaanu?ul"
Returns: "one"
"?gkvdg?t??ahekt?qt?gsw?xqaoxunjk"
"k?dgmtoi?he?tcq"
"?ktc?tegswcxqa?xu"
Returns: "one"
"l??paexj???e?qu?lhvrnij?vawdwk?kxjrp"
"ilhvrn?jsva"
"?nij?vawdwk?kx?rp"
Returns: "one"
"tcoblx?vb?tesrcrnbf??duc??bgdcvou?ih"
"bgdc?o?dih"
"c??lxivbt"
Returns: "both"
"?pe?w?pdckss?dugsijkgqx?wmg?v?uuxqt?pc"
"?jk?qxnwmgs?qu?xq?opc"
"jk?qxnwmgs?quu??top"
Returns: "one"
"aijudmtsgesjxqu?ufr??fx?fbi?ihfb?gn???eae"
"mtsges??qucuf??if"
"iju?mtsgesjxqu?u?r??fxa"
Returns: "one"
"i?wff??lctxlg?ujqgdfjmjb??r??n?f?tlcedfxoukuuw"
"?fj?jb?p?gfnffvtl?ed?xouk"
"??q?ctxlgxujqgdfjmjbxprg?nf"
Returns: "one"
"jfujq???mra???adqdhvlpmidrb?edenaqo?gi"
"uj?n?kmrarvk???dhvlpm"
"?kmrarvk?dqd"
Returns: "one"
"????habmmekl?efxladdmcxtva?rp?tgoiq"
"ha?mm?kl?efx"
"du??abmm"
Returns: "one"
"?tprdv??pnrtmudjoxvd?ws?j?a?u?aoiq"
"?mud?oxvdn?s?jwa"
"dnwst?wah?naoi"
Returns: "one"
"ixrhcwij?pb?kf?wxfp?upd?ajqil?rth?ck?dt"
"xr?cwijs?b?kft?xfp?updga"
"bbk?tw?fpu"
Returns: "one"
"di?it?dkovo?d?if?ratcwrmp?rtxhbtpcdk?g?ntt"
"cwrm?p?tx?btpcd"
"cw?mpp?txhbtp?d?wgn"
Returns: "one"
"hsrbpoigd?oomd??sxbhhoe?w?anpv?o?jqpp?nsbdjoh"
"srbpoi?d?oomdjp??bhho?qwda"
"?eqwdanp?qo?jqp"
Returns: "one"
"?r?xcd?t?ln?jfwwmpd?aq?uhd?drhnxamws?soo"
"?rh?cdttgl?gj"
"tg?ngjfwwmp?s?qn?h?adrhn"
Returns: "one"
"btkkbywgyp?vrvxxvxek?uv??zylvlqzh?jiaiozzrw?n"
"pgypb?rvxx?x?ad"
"gsgy?b?rvxxv"
Returns: "none"
"tbgdyzlhq?ie?levrn?uuqvtz??qcsgxvoc?op?gvmlgarc?e"
"gi?jlevr?wu?qvt?phq?s"
"tztbgd?zlhq?iejlev?nwuuq?t??hqc"
Returns: "one"
"?ullsefvvllswqty??o?rpvdqeavj?dhk?u?vzaqmlikediizw"
"lswqtyewo?rpvd?e?vu"
"z?y??oqrpvdq?avjqd?kouevzaqm?ik?di"
Returns: "none"
"mppeet???euebq?xjl?qksblwo?mfyatpr?ull?wryauoira"
"ullcwry?u?"
"x??jq?sblw?umfyat?rxul??w?yauoir"
Returns: "one"
"yclebsfmk?u?m?cewawnahmyngp??kfppr??jbewmavygyd"
"ky?lebsf?k?uxmec?wawn?hmyngp?pf"
"ek?cpkfppr?qjbewma"
Returns: "none"
"sea?yzeilxytdrw???uvgesnbux?jyneeor?pvoavp?agrlzt?"
"zuxu??n?eorepv?avptagrlzyl"
"jrauvgesnb?x???neeore?voa??tagrlz"
Returns: "one"
"hxbznhoqgdbydomi?a??eemwtxadka?rzf??miculfsou"
"yznhoq?dby?im"
"rd?miyay?ee"
Returns: "none"
"s?iaw?ghevtjgfsigstilq??euo??o?nbeoxiufmraxxhs?nk"
"igstilqq??uontotnb?jv"
"du?ntotn?eoxi?"
Returns: "none"
"j?ms?qen?br?kojsi?tj?dogln?okcbvnpprfugwxzxhn"
"uyokc?vnppr?u??xzxhn"
"m?d?gln?okcbvnpp?f"
Returns: "none"
"rzkk??die?f?l?wtfzbdnwkcrvmtv?soyfybqcmuorkby"
"j?mfo?h?t??bdnwkcrvm?vy?oyfybqfb"
"?emfol?wtf?b"
Returns: "one"
"w?oksrngaqva?z?qveoorioodzgtfyzbeooyhdeht?kodhe"
"??aqvavzx?veoor?oodex"
"dz?tfyzb?"
Returns: "one"
"otlputtwhzph?omqxifquxskojv???a?bnjxj?vqdmakbmdy?i"
"?lputtwh?ph??mqxif?uxskojvt?iars"
"ria??njx?cvqd?akbmdy"
Returns: "one"
"bb?ktapbmikkafluxu???fub?egxyckbfe?yfdztll?nqohpip"
"asktapbm?kkaf??xui??fub?egx?ckbfeew"
"?gmfu?begx?ckb?emyf"
Returns: "one"
"hndd?s?eshtkmrsdhcqueeif?ugboh???vawnrchbxrp?mswoi"
"?ndd?sreshtkm?s?hg"
"?u?awnrchbx?p?mswo"
Returns: "one"
"lclufzba?m?n?um?zclveyjuoa?bwudkwqe?p?evwf?rcxidb"
"hum?zclv?yj"
"atembnuumr?cl??yjuo?z?w?dk?qee"
Returns: "one"
"zh?xqlynuekxtssiwycgyvw?as?n?ql?y?rqmsdgwod?ixz"
"essi?ycgyvw??sz?tqluy?rqmsw"
"?ycgy?wuaszntqlu??rq?sdg?odpix"
Returns: "one"
"rh?svofcsaemxaovuxnsudrcmspljb?bkj??xbkq???aqv"
"mxaov??ns?drc?s?ljbtbkjv?em"
"svofc?aemx??vuxnsud?c?spljbtbk"
Returns: "one"
"dl?bfog?suex?shwbngeh?x?hg?mbivevifbymyqieq?xxg"
"afogv?uex?sh?bnge?txrhg?mbivbu"
"cdbn?ehtxr?g?mbivevif"
Returns: "none"
"j?dlzbwzd?leihjannrcpwfxvrhhweignmto?r??y?y?lh?ywc"
"qwzdh?eihj?n?rcpw?"
"pppwfxv?hh?eignmt"
Returns: "none"
"pacwldxnuqehhzq?fjuk?jrcyhpmzt???gkh?kuiabpha?qg"
"hhzq??juk?jrc"
"mercyhpm??co??khmkuiab?"
Returns: "one"
"vbn?j?d?ymfb?jhiwoxzcbqjbeaxnmfioutxkz??lhmpqu"
"ke??nmfio?t?k?ajlhmpqumk"
"ovbnjj?dbymfbc????oxzc?qjbeaxn"
Returns: "none"
"?yhvdj?g?zmplyxpbbv?pxvwy?c?tmghkqepzbytak??iidlky"
"??g?zmplyxpbbvrpx?w?dc"
"yv?yd??tmghkqe???y?akloiidlky"
Returns: "one"
"l?xkqke?ijpoychyogzz?xgixnnjcbunatzted?mo?cn?"
"ych?ogzzex?z"
"s?exgi?nnjcb?"
Returns: "none"
"b?jjvr?pa?dzcl?wxct?u?xczlubozqrlaaithx?latpmt"
"dzc???xctvulx"
"qzmj?vrfpaddz?l??xc?v?lxcz"
Returns: "one"
"uwmdnzernhfvroxp?ue??do?likkkqbgo??d?qwezbzqrx?st"
"?wmd?zern?fvro??buebmdoba"
"fk???kqb?opmdpqwezbz"
Returns: "none"
"t?kulkzk?bkqfmaz?sogx?guvs?k?kitqsnd?onfsayxm?yy"
"f?ulkzkbb???maz?sogxzguvswtp"
"mk?bk?fm???sogxzguvswkyk?"
Returns: "none"
"uo?hd?lgjhlncbryqnembbudihnjd?oxfqgluut?bfsg?j?"
"hoch?clg?hlncbryqnembb??x"
"swochdclg??lncbr?qnem?budih"
Returns: "none"
"z?kt?ytnhnowmueskvban?fj?tmsykhxxuqcsjrbyfalz??l"
"tm?ykhxxuqcsjrb?fal?e?lv"
"frytnhn?w?uesk?b?nzfjltmsykh?x?q"
Returns: "none"
"foh?nqugbeencbeeov?nbek??tcmowew?meyeyghek??ob"
"eovnnbe?i?tcmow"
"ovnnb??i?tcmo?ewlmeyey??e"
Returns: "one"
"yrokeitz?j?a?auqpjvubmz?gz?lcpmbhc?lkg?apk?omvgdgd"
"?gzml?pmbh??lkgmapkaomvg?"
"??auqpjvubmz?g?m?c?mbhcnlk"
Returns: "one"
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
"aaaaaaaaaaaaaaaaaaaaaa"
"aaaaaaaaaaaaaaaaaaaaaaaaaaaa"
Returns: "both"
"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwx"
"?yzabcdefgh?jklmn?pqrstuvwx"
"bcdefghijklmn?pqrstuvw"
Returns: "both"
"abcdefghijkl?nopqrstuvwxy?ab?defghijklmnopqrstuvwx"
"bcdefghijk?mnopq?stuvw"
"?yzabcdefghijklmnopqrstuvwx"
Returns: "both"
"??"
"z"
"a"
Returns: "both"
"acaac"
"ac"
"aac"
Returns: "both"
"abctrabc"
"abc"
"bct"
Returns: "both"
"b"
"b"
"a"
Returns: "one"
"yello?"
"llow"
"llow"
Returns: "one"
"abcaabc"
"abc"
"bca"
Returns: "both"
"abcd"
"??"
"??"
Returns: "both"