บทนำ
recursive ย่อเป็นตัวย่อที่มีหรือหมายถึงตัวเองตัวอย่างเช่น
Fishอาจจะเป็น recursive ย่อสำหรับFish is shiny heroแจ้งให้ทราบว่ายังมีตัวย่อของตัวเอง อีกตัวอย่างหนึ่งคือ->Hi Hi iglooหรือแม้กระทั่งppcg paints->ppcg paints cool galaxies pouring acid into night time stars
ดังนั้นโดยทั่วไปประโยคเป็นตัวย่อซ้ำถ้าตัวอักษรตัวแรกของแต่ละคำสะกดคำหรือคำแรก
ท้าทาย
สร้างโปรแกรมที่ใช้สตริงที่มี 1 คำหรือมากกว่าโดยคั่นด้วยอักขระเว้นวรรคและแสดงตัวย่อแบบเรียกซ้ำหรือสตริงว่างถ้ามันเป็นไปไม่ได้ มันเป็นไปไม่ได้ที่จะทำให้ recursive ย่อสำหรับสตริงเช่นตัวอย่างเช่นppcg elephantเพราะคุณจะเริ่มต้นด้วยการpจากppcgนั้นเพิ่มว่าการย่อแล้วการจากe elephantแต่ตอนนี้เรามีความขัดแย้งเนื่องจากตัวย่อสะกดคาถา "pe .. " ซึ่งขัดแย้งกับ "pp .. " hiที่ยังเป็นกรณีที่มีการยกตัวอย่างเช่น คุณจะรับช่วงต่อhจากhiนี้ แต่ตอนนี้ประโยคจบลงแล้วและไม่มีตัวอักษรที่จะสะกดอีกต่อไปhiและเราเหลือแค่คำhที่ไม่ตรงกันhi. (สตริงต้องการจำนวนคำมากกว่าหรือเท่ากับจำนวนตัวอักษรในตัวย่อ)
อินพุตและเอาต์พุตไม่คำนึงถึงขนาดตัวพิมพ์
ข้อ จำกัด
- สิ่งใดก็ตามที่ป้อนเข้าไปในโปรแกรมของคุณจะเป็นคำภาษาอังกฤษที่ถูกต้อง แต่คุณต้องแน่ใจว่าได้ส่งออกคำภาษาอังกฤษที่ถูกต้องเช่นกัน (คุณสามารถใช้ฐานข้อมูลหรือเก็บคำสำหรับตัวอักษร 26 ตัวแต่ละตัว)
- มีช่องโหว่มาตรฐานและกฎ IO เริ่มต้นใช้งาน
กรณีทดสอบ
hi igloo -> hi
ppcg paints -> (impossible)
ppcg paints cool giraffes -> ppcg
ppcg paints cool galaxies pouring acid into night time stars -> ppcgpaints
ppcg paints cool galaxies pouring acid into night time -> ppcg
ppcg questions professional pool challengers greatly -> (impossible)
I -> I
เกณฑ์การให้คะแนน
นี่คือcode-golfดังนั้นซอร์สโค้ดที่เล็กที่สุดในหน่วยไบต์จะเป็นผู้ชนะ
ppcg paints cool galaxies pouring acid into night timeจะเป็น "ppcgpaint" เมื่อถูกทำให้เป็นตัวย่อ แต่ผลลัพธ์ควรจะเป็นppcgแม้ว่ามันจะเป็นเพียงการแข่งขันบางส่วน?