ท้าทาย
กำหนดสตริงที่อธิบายกฎการตัดและสตริงอื่นให้ตัดส่วนของสตริงที่สองโดยใช้กฎที่อธิบายโดยสตริงแรก
สตริงทั้งสองจะประกอบด้วยตัวอักษรa-zหรือA-Zอย่างใดอย่างหนึ่งที่คุณเลือก (พวกเขาไม่จำเป็นต้องเป็นตัวแทนในลักษณะเดียวกัน) วิธีที่จะแก้ไขสตริงที่สองอธิบายไว้ด้านล่าง:
ขั้นตอนวิธี
ใช้สตริงแรกและจินตนาการเติมช่องว่างระหว่างตัวอักษร (เพิ่มขึ้น) ที่ไม่ติดกันด้วย=; ตัวอย่างเช่น=>abcfg abc==fgจากนั้นให้เรียงสองสตริงและส่งคืนอักขระทั้งหมดจากสตริงแรกที่ไม่อยู่เหนือเครื่องหมายเท่ากับ ตัวอย่างเช่นที่กำหนดabcfgและqrstuvwเป็นอินพุต:
qrstuvw - Modify
abc==fg - Modifier
qrs--vw -> qrsvw
หากตัวดัดแปลงสั้นลงหลังจากเติมด้วยเครื่องหมายเท่ากันตัวอักษรต่อท้ายทั้งหมดในสตริงที่สองควรรวมอยู่ด้วย หากตัวดัดแปลงยาวกว่าตัวอักษรต่อท้ายจะถูกละเว้น
ตัวดัดแปลงไม่ได้รับประกันว่าจะถูกจัดเรียง
กรณีทดสอบ
abcfg, qrstuvw -> qrsvw
abqrs, qwertyuiopasdfghjklzxcvbnm -> qwjklzxcvbnm
za, qr -> qr
azazaz, qwertyuioplkjhgfdsazxcvbnmnbvcxzasdfghjklpoiuytrewq -> qmn
การใช้งานอ้างอิง (ใช้เพื่อสร้างกรณีทดสอบ) -> TIO
กฎระเบียบ
- ช่องโหว่มาตรฐานใช้
- คุณสามารถรับข้อมูลเป็นสองสายอักขระสองรายการตัวเมทริกซ์ของอักขระ ฯลฯ (รูปแบบที่เหมาะสมอื่น ๆ เป็นที่ยอมรับ)
- คุณสามารถแสดงผลเป็นสตริงหรือรายการอักขระ (หรือรูปแบบมาตรฐานอื่น ๆ สำหรับสตริง)
- นี่คือรหัสกอล์ฟดังนั้นคำตอบสั้น ๆ เป็นไบต์ในแต่ละภาษาจะถูกประกาศให้เป็นผู้ชนะสำหรับภาษานั้น ๆ จะไม่ยอมรับคำตอบ
- สตริงอาจว่างเปล่า
มีความสุขในการเล่นกอล์ฟ!
ได้รับแรงบันดาลใจจากความท้าทายสองประการของเควินครุยเซ่นเมื่อเร็ว ๆ นี้ "นั่นฉันซ่อมมัน (ด้วยเทป / เชือก )"
There, I blew it up (with a segfault)