พื้นหลัง
นี่คือส่วนแรกของสนามกอล์ฟ 3 หลุมในการประมวลผลข้อความ แนวคิดที่เกินความคาดหมายคือถ้าคุณนำข้อความเข้าและไปป์ผ่านวิธีแก้ปัญหาทั้งสามข้อ (ด้วยรหัสกาวจำนวนเล็กน้อย) มันจะแยกย่อหน้าที่จัดรูปแบบออกมาอย่างสวยงาม ในการท้าทายครั้งแรกนี้งานของคุณคือการใส่ยัติภังค์ชิ้นส่วนของข้อความโดยใช้รูปแบบการใส่ยัติภังค์ที่กำหนด
อินพุต
โปรแกรมของคุณจะรับอินพุตสตริงสองเส้น: ข้อความและรายการรูปแบบยัติภังค์ อินพุตแรกเป็นสตริงที่ไม่ว่างเปล่าของอักขระ ASCII และช่องว่างที่พิมพ์ได้ ~
ก็จะได้มีการแบ่งบรรทัดหรือเครื่องหมายตัวหนอน อินพุตที่สองคือรายการคำที่คั่นด้วยจุลภาคซึ่งประกอบด้วยพยางค์ที่คั่นด้วย tilde ของอักขระ ASCII ตัวพิมพ์เล็ก ex~cel~lent,pro~gram~ming,abil~i~ties
ตัวอย่างคือ
เอาท์พุต
โปรแกรมของคุณจะแก้ไขอินพุตแรกด้วยวิธีต่อไปนี้ คำใด ๆ (สตริงย่อยสูงสุดของตัวอักษร ASCII ตามตัวอักษร) ที่พบตัวพิมพ์เล็กที่ใส่ยัติภังค์ในอินพุตที่สองจะถูกแทนที่ด้วยเวอร์ชันที่ใส่ยัติภังค์นั้น แต่จะต้องเก็บรักษาไว้ ด้วยรายการตัวอย่างข้างต้นหากข้อความมีคำว่าExcellent
มันจะถูกแทนที่ด้วยEx~cel~lent
; อย่างไรก็ตามExcellently
จะไม่สามารถแก้ไขได้ ผลลัพธ์ของคุณจะต้องเป็นสตริงที่ดัดแปลงนี้
รายละเอียดกฎและเกณฑ์การให้คะแนน
คุณสามารถสมมติสิ่งต่อไปนี้เกี่ยวกับอินพุต:
- อินพุตแรกไม่มี tildes และไม่มีช่องว่างนำหน้าต่อท้ายหรือเว้นวรรคซ้ำ ไม่ว่างเปล่า
- อินพุตที่สองมีอย่างน้อยหนึ่งคำและแต่ละคำในนั้นจะมีอย่างน้อยสองพยางค์ แต่ละพยางค์ไม่ว่างเปล่า
- อินพุตที่สองไม่มีคำที่เกิดขึ้นเป็นพยางค์ในคำอื่น
คุณสามารถเปลี่ยนลำดับของอินพุตทั้งสองถ้าต้องการและเพิ่มทางเลือกหนึ่งบรรทัดขึ้นบรรทัดใหม่ไปยังเอาต์พุต
คุณสามารถเขียนฟังก์ชั่นหรือโปรแกรมเต็มรูปแบบ จำนวนไบต์ต่ำสุดที่ชนะและช่องโหว่มาตรฐานไม่ได้รับอนุญาต
กรณีทดสอบ
1st input [newline] 2nd input [newline] output
เหล่านี้จะปรากฏในรูปแบบ
Excellent programming abilities, you work excellently!
ex~cel~lent,pro~gram~ming,abil~i~ties
Ex~cel~lent pro~gram~ming abil~i~ties, you work excellently!
Superman (sometimes incorrectly spelled "Super-man") is super #&%@ing strong.
su~per,some~times,in~cor~rectly,spell~ing
Superman (some~times in~cor~rectly spelled "Su~per-man") is su~per #&%@ing strong.
IncONsISTent caPItalizATIon!
in~con~sis~tent,cap~i~tal~iza~tion
In~cON~sIS~Tent caP~I~tal~izA~TIon!
Such short words.
awk~ward
Such short words.
Digits123 are456cool789.
dig~its,dig~i~tal,are~cool
Dig~its123 are456cool789.
magic magic
ma~gic
ma~gic ma~gic
ข้อผิดพลาดใด ๆ ที่เป็นไปได้ของการใส่ยัติภังค์ในการท้าทายนี้เกิดจากเครื่องมือยัติภังค์นี้
#programming!
จะยังคงได้รับผลกระทบจากอินพุตที่สองของpro~gram~ming
) ตัวเลขยังไม่นับ (เช่นอนุญาตให้ใช้ตัวอักษรตามตัวอักษรเท่านั้น) หรือไม่