รับรายการสตริงแทนที่แต่ละสตริงด้วยหนึ่งในสตริงย่อยที่ไม่ว่างซึ่งไม่ใช่สตริงย่อยของสตริงอื่นใดในรายการและสั้นที่สุดเท่าที่จะทำได้
ตัวอย่าง
ได้รับรายการ["hello","hallo","hola"]
, "hello"
ควรจะถูกแทนที่โดยเพียงแค่"e"
เป็น substring นี้ไม่ได้มีอยู่ใน"hallo"
และ"hola"
และมันก็เป็นที่สั้นที่สุด "hallo"
จะถูกแทนที่ด้วยอย่างใดอย่างหนึ่ง"ha"
หรือ"al"
และ"hola"
โดยใด ๆ ของ"ho"
, หรือ"ol"
"la"
กฎระเบียบ
- คุณสามารถสันนิษฐานได้ว่าสตริงนั้นจะต้องไม่ว่างเปล่าและมีอักขระที่เป็นตัวอักษรของเคสเดียวกันเท่านั้น
- คุณสามารถสันนิษฐานได้ว่ามีสตริงย่อยดังกล่าวอยู่ในแต่ละสตริงในรายการนั่นคือไม่มีสตริงใดในรายการที่จะเป็นสตริงย่อยของสตริงอื่น ๆ
- อินพุตและเอาต์พุตสามารถอยู่ในรูปแบบที่เหมาะสม
- นี่คือโค้ดกอล์ฟดังนั้นพยายามใช้ให้น้อยที่สุดในภาษาที่คุณเลือก
กรณีทดสอบ
มีเพียงหนึ่งเอาต์พุตที่เป็นไปได้สำหรับกรณีส่วนใหญ่
["ppcg"] -> ["p"] (or ["c"] or ["g"])
["hello","hallo","hola"] -> ["e","ha","ho"]
["abc","bca","bac"] -> ["ab","ca","ba"]
["abc","abd","dbc"] -> ["abc","bd","db"]
["lorem","ipsum","dolor","sit","amet"] -> ["re","p","d","si","a"]
["abc","acb","bac","bca","cab","cba"] -> ["abc","acb","bac","bca","cab","cba"]
เกี่ยวข้อง: สตริงย่อยที่ระบุสั้นที่สุด - แนวคิดที่คล้ายกัน แต่มีกฎที่เกี่ยวข้องมากกว่าและรูปแบบที่ยุ่งยาก
""
(สตริงว่าง) ระบุเฉพาะ"ppcg"
กรณีเดียว?