PAndPuns
TCO19 SRM 756 · 2019-04-24 · by IH19980412
Problem Statement
Kaede loves puns. You want to please her by telling her a pun.
Given the
For the purpose of this problem, text is a pun if there exists some string S of length two or more that has two non-overlapping occurrences in text. (Each occurrence must be a contiguous substring of text, you may not skip letters.)
Constraints
- Length of text will be between 4 and 2,500, inclusive.
- text will consist of lowercase English letters only ('a'-'z').
"aaaa" Returns: "pun"
This is a pun because we can find two non-overlapping occurrences of the substring "aa".
"aaab" Returns: "not a pun"
This is not a pun. Note that the two occurrences of "aa" in "aaab" overlap.
"pandpuns" Returns: "not a pun"
"pan" and "pun" are similar but differ.
"producerandproduction" Returns: "pun"
"qmhckgwdelmjfcfveoezvvycybvodzfldouzjdcexchnlgblphtazubcjkzpuueosfwgrsdmgjhnwkxicsyagrwogeigipkiljgsruoimvisioqzskrjjvldzspoyymnxxnflsfwbnvwsdbjaehnntomdcwdxqdczspatywwdolgrghqoegxvsbjpypyaekyyrxqbpmudizkiqbuepeyqddiyswomdgurxitfzgtezcosyuzzjhstlfvzmcsyutkhijpkqpetoutcmqsrbykclvloxllofvvfltikcjjxwarucjgslahxeaviwzhprnxuccebngxknkavxwwkytisisxifnwjmzuflwpuekslxnyccylxwbmscfmanlfsifywnpegsssmtzaebewzoiyikgmltymfhbblkyyjptytswwbczgdxfxluprfekvqnphinzerwzdqhyyoorrgequaaumpxajkhdeidxihnxntypouqnbpylgblwgijeyocynhupsianrexewyzuynntdmgwafronnzgkmjvldpxwjupygkjeeglpwuuhtcbqqcvyrlofgtnxfwsynaxtznziupwqrzngvdhcnujqwxjzpfkdrizcckflzsfnlrruracamwjhbgukhmccpetqppiscczokbjggdpegfpttdjdnfdnfrjybzrcngklbrjxuthaifemmcjzhmnzqsbxllmcyfbcoeynslpwgeqzcjjfusyhusaocyujetsammmwukacqfkaqwmdpagpiprvjdgvmszepehrobcsxocuhpbfvmdtksxtzyonluicsewmdusltqlfavsfunyupfrmwxrgxzaruywioxtkrnbvgjuttjclbkphhsjibknqactrypgqhfqextfweypvpfvxlewehnhgcscgtghplwrrbjcoltuwddnruyhuobavnqpezbtcaahrloxxlplyxhqlqxjayioznxatdfojadraizwssfvxkckjuytjbjqzkkwdvllyfqdbyjloliuergceovupihktwadmtnrzyuqoyzckhgagbpmrouibfozlndcbqzrdmpajpvjewggtpzfphfsywwtdtlmbulsdlqvbpalfsvpjsytfrqmtnwvjsgirnknvoncqabowfhonlepcvvorahlcqgdlwknbknntcyjcxquiyfxvjfdcjegzhozhtjtbndzrhnziyuapkxylouzrgdiobmakiuvyecpndochqjjyneerwczswajllxjdtcxssffgjlvmwqrmsmbpmineyuadosyxdbyocilfqnngenngspxzrntkccpxavvtnhhqqzgsxpudrbwiottgpixygydhzwpriponviahbimvsrnrzbgigbzbmzpjdeevcbfaxfnfnmkblrwjykelptayolbtjlofkybynflidtxmtpmttzpjsfvqnbbqbpinrmvftqmlgxpkciojmroaiqzbqjdqzuaxantsozdmqpilqawxfmzxvdyqzorkrcvjsqxtwerdlijsjearswtuxozivqfnubdxqjljvmvnxaxsebcnswvmelbsceccxqbdhmntehtactpdadysjtahhdwewqfumhlnnyllxphrskzmwueqeitdfoenrkvrgniedabuonbxomnrnheazhxlerxmktdpgcyckwstapdruyabafrfzmpluizbkkdspgxojgilrittvmronqvwrjivywjgktitihdlibphuybqolrseafxolnbagryevsxnuyyqhxkxuvptwvpdvinjezqjuwjztgnpwtwmgrpflckjmsjtzgkszqkxficnxzakbwwaponoosryzysyitwjmnndtaaevcljeheeroglttjxvbzxmcviopvviryarfhxiimlyzarmtgdjcnrhxadidfypqwaqdjnjowekbkvwaklrcjjdlrcgwsiczurrapmlrcxmukvtbjtpfyackyjypdemmqfgghlvneexpbvnthtgodfxwfbmeloanbyxbsphktpxqnferysdwcvyfobwrwrempmlgxpaiqakpeuyncdoigzcwjxhqxdfqiiqmrcneweuowugmqvkomozflctdsriccfuhrzmyruucucswheewrkpwsiuipomprpbqlpahiaqmybhmxquwppzxfeyfjgualybodqyqailkuzfscyprokusqydpixbikrdenffvblmmtgiarclkgmdrbracvoysfakwofzgvcrejjnmxhjvsfeekifryonlnetpntbpfvhbzqxuzkcvntdlpmbbfrhgdykxvokpvaancdyvietfxwtiulpdoboturzcwpezazlkoyfamffapmvbbkerqalxxttyhwialjvjfiqfdykiirfjkodnulrxyubpgmogjzzfymwggltbbbvzhtxlhiystgyzalzbamtmdygyazawdoxtderqjabsleirlbbibwzwaqjsh" Returns: "pun"
Submissions are judged against all 34 archived test cases, of which 5 are shown here. Case numbers match the judge’s.
Language: C++17 · define a public class PAndPuns with a public method string check(string text) · 34 test cases · 2 s / 256 MB per case