ความท้าทายของคุณในวันนี้คือการใช้สตริงหลายบรรทัดและส่งออกสแควร์ที่ใหญ่ที่สุดที่มีอยู่ภายในสตริงที่มีมุมซ้ายด้านบน
สตริงสแควร์เป็นที่ที่:
- แต่ละบรรทัดมีจำนวนอักขระเท่ากัน
- จำนวนอักขระในแต่ละบรรทัดเท่ากับจำนวนบรรทัด
พิจารณาสตริงอินพุตที่เป็นไปได้ต่อไปนี้:
abcde
fgh
asdf
foobar
สี่เหลี่ยมจัตุรัสที่ใหญ่ที่สุดที่คุณสามารถเลือกได้จากมันซึ่งรวมถึงตัวอักษรตัวแรก ( a
ในมุมบน):
abc
fgh
asd
ไม่สามารถมีสี่เหลี่ยมจัตุรัสยาว 4 ข้างได้เนื่องจากบรรทัดที่สองนั้นไม่ยาวพอ พิจารณาอินพุตที่เป็นไปได้นี้:
a
bcd
edf
ghi
a
ตารางที่ใหญ่ที่สุดที่นี่เป็นเพียง รูปสี่เหลี่ยมขนาด 3x3 ที่อยู่ด้านล่างไม่มีอักขระตัวแรกและไม่นับ
ต่อไปนี้เป็นกรณีทดสอบเพิ่มเติมอีกสองสามข้อ:
a
a
abc
def
gh
ab
de
ab
cd
ab
cd
abcde
fghij
klm
no
abc
fgh
klm
a
b
a
คุณอาจต้องป้อนข้อมูลให้คั่นด้วยตัวเลือก LF, CR หรือ CRLF
อักขระขึ้นบรรทัดใหม่ไม่ถือเป็นส่วนหนึ่งของความยาวของบรรทัด
คุณอาจต้องการให้มีหรือไม่เป็นบรรทัดใหม่ต่อท้ายในการป้อนข้อมูลซึ่งไม่นับเป็นบรรทัดเพิ่มเติม
อินพุตเป็นสตริงหรืออาร์เรย์ถ่าน 1D มันไม่ใช่รายการของสตริง
คุณอาจสมมติว่าอินพุตไม่ว่างเปล่าและทุกบรรทัดไม่ว่างเปล่าและมีเพียง ASCII ที่พิมพ์ได้รวมถึงช่องว่างและบรรทัดใหม่ (สำหรับตัวคั่นบรรทัด) แต่ไม่ใช่แท็บ
นี่คือcode-golfไบต์ที่น้อยที่สุดชนะ!
.split('\n')
ดังนั้นฉันจึงไม่เห็นว่าทำไมบางอย่างถึงควรใช้งานได้ฟรี